Get the latest release from the Archives on Cemetech or ticalc.
Since there's been a bit of talk on how to dump 84+ CSE ROMs for use with jsTIfied, I hacked some support into
rom8x.
There are further improvements to be made (mostly to allow one to easily build everything with a modern toolchain), but it's done enough to test (I don't own a CSE to test against).
Run everything basically as documented, but set calcType to 84CSE:
Code: $ rom8x 84CSE -1 D84CSE1.8xv -2 D84CSE2.8xv -u Ti84PlusC_OS.8Cu
For now, grab binaries here:
http://media.taricorp.net/rom8x/
And source is on Bitbucket:
https://bitbucket.org/tari/rom8x
This seriously needed to be done, thanks for taking the initiative! However, I think you didn't reformat the ASM programs properly, as my TI-84+CSE refuses to run G84CSE1 and G84CSE2. Did you switch to the new 2-byte token for ASM programs, the new .org address, and the new bcall/RAM equates?
Derp. Hadn't done any of the necessary updates for new defines.
Done now, and I've uploaded updated binaries to the same location as before.
I recommend adding the "84CSE" option to the usage information, and I also recommend making the -u part a mandatory, not optional, argument. Other than that, I tested this out and found it to be functioning perfectly, so if you fix up those pieces and add some documentation, I think it should go on ticalc.org and in the Cemetech archives, and we can do some newsing about it.
KermMartian wrote:
I recommend adding the "84CSE" option to the usage information, and I also recommend making the -u part a mandatory, not optional, argument.
Did the former, not yet sure if I want to do the latter.
There's.. a lot of fixing to be done before I'm willing to call the program release-worthy, now that I look closely at the code. While it technically works, it's full of nasty things. A few that I fixed:
Just for fun (I haven't gotten to fixing this yet):Code: [tari@Kirishima]$ ./rom8x 83PBE -u $(python -c 'print("x" * 512)')
Calculator model: @
Dump 1: D83PBE1.8xv
Upgrade file: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Bus error (core dumped)
It does a strcpy() from argv into small buffers on the stack in several places.
Nice catch on those fixes; that's some ugly coding indeed. Why not make the upgrade file mandatory, though? Without it, all you get is boot code with no actual OS.
It defaults to a somewhat reasonable filename if -u is missing, which I think is okay, and if that's missing (AFAICT) it bails out and complains.
More annoyingly, I'll have to go digging into the argument parsing code more. I'll probably make such a fix, but it'll happen along with all the other code cleanup.
Tari wrote:
It defaults to a somewhat reasonable filename if -u is missing, which I think is okay, and if that's missing (AFAICT) it bails out and complains.
Actually, I was able to create a "ROM" with just the boot page appvars and no OS file at all, which I believe would be confusingly broken for most users.
I think I fixed all the glaring buffer overflow issues. Also made the -u option mandatory (it did indeed allow you to create a useless ROM without any OS).
New binaries are at the same location (see first post), please test; I didn't beyond checking that it doesn't crash horribly. Provided this works, I'll finish documentation and package it all up.
Tari wrote:
I think I fixed all the glaring buffer overflow issues. Also made the -u option mandatory (it did indeed allow you to create a useless ROM without any OS).
New binaries are at the same location (see first post), please test; I didn't beyond checking that it doesn't crash horribly. Provided this works, I'll finish documentation and package it all up.
I just tested the whole process, and jsTIfied was able to load and boot the resulting ROM. All seems well.
For me it keeps saying "D84CSE1.8xv: No such file or directory" help me please!
CalcGuy123 wrote:
For me it keeps saying "D84CSE1.8xv: No such file or directory" help me please!
Did you follow the directions to generate D84CSE1 and D84CSE2 on your calculator, then transfer them back to your computer?
KermMartian wrote:
CalcGuy123 wrote:
For me it keeps saying "D84CSE1.8xv: No such file or directory" help me please!
Did you follow the directions to generate D84CSE1 and D84CSE2 on your calculator, then transfer them back to your computer?
Yes. Then I put them all in a folder.
Did you put them in the same folder as the .8xu and the rom8x.exe executable?
KermMartian wrote:
Did you put them in the same folder as the .8xu and the rom8x.exe executable?
Isn't it a .8Cu? But yes I did.
This worked perfectly for me the other day. Although in the code in the OP he has an 83Plus OS and not an 84PlusCSE OS.
CalcGuy123 wrote:
KermMartian wrote:
Did you put them in the same folder as the .8xu and the rom8x.exe executable?
Isn't it a .8Cu? But yes I did. Yes, my error. And you're running it from a command window in that same folder? What was the exact error you got?
KermMartian wrote:
CalcGuy123 wrote:
KermMartian wrote:
Did you put them in the same folder as the .8xu and the rom8x.exe executable?
Isn't it a .8Cu? But yes I did. Yes, my error. And you're running it from a command window in that same folder? What was the exact error you got?
it said "D84CSE1.8xv: No such file or directory" after is said stuff like calc type: etc.
This program worked great for me and gave me a working ROM. Note that you can NOT use this to dump the rom from TI SmartView. It will not work. You MUST have an actual TI-84+CSE.