Hi all! First time poster here
Just here to announce ZX7Load, a loader for ZX7 compressed programs on stock TI83s!
For the past couple of years I've been working on a little stock TI83 game (hopefully I'll get to post about it soon ) with the self imposed limitation of a 8KB program size.
During early development of this game I realised that a ton of space was wasted by using unsquished binaries so I moved to ZASMLOAD but more recently I realised something else. Since squished binaries can't be ran natively and require a loader anyway, why not also use compression on top for even more size reduction? So I did a quick check to see if it'd be worth it and with ZX7 the current build of my game went from 9.9KB to 5.6KB so I modified ZASMLOAD and added Einar Saukas' standard ZX7 decompressor to it!
Since ZX7Load is a modified version of ZASMLOAD, you use it the same way as ZASMLOAD. So you enter the compressed program's name into Ans as a string and then execute ZX7Load with Send(9
ZX7Load programs have a basic 4 bytes header at the start that does 3 things:
The first byte is 0xC9 (RET opcode) which ensures that a ZX7-compressed program can't be accidentally ran through ZASMLOAD (which would undoubtedly corrupt your calculator)
The second byte is 0x8D (smiley face ). It, along with the first byte, works as a signature that lets ZX7Load ensure it is in fact loading a ZX7-compressed program.
The last 2 bytes of the header are the program's uncompressed size. This is used to insert enough memory in the region for the uncompressed program.
More info about the header (and ZX7Load in general) is contained in the included README so make sure you read it!
So far I've only tested it on stock TI-82 stats.fr (French TI-83) but it should work on regular 83s just as well.
You can download it at http://ceme.tech/DL2524
Enjoy!
Targz
Just here to announce ZX7Load, a loader for ZX7 compressed programs on stock TI83s!
For the past couple of years I've been working on a little stock TI83 game (hopefully I'll get to post about it soon ) with the self imposed limitation of a 8KB program size.
During early development of this game I realised that a ton of space was wasted by using unsquished binaries so I moved to ZASMLOAD but more recently I realised something else. Since squished binaries can't be ran natively and require a loader anyway, why not also use compression on top for even more size reduction? So I did a quick check to see if it'd be worth it and with ZX7 the current build of my game went from 9.9KB to 5.6KB so I modified ZASMLOAD and added Einar Saukas' standard ZX7 decompressor to it!
Since ZX7Load is a modified version of ZASMLOAD, you use it the same way as ZASMLOAD. So you enter the compressed program's name into Ans as a string and then execute ZX7Load with Send(9
ZX7Load programs have a basic 4 bytes header at the start that does 3 things:
The first byte is 0xC9 (RET opcode) which ensures that a ZX7-compressed program can't be accidentally ran through ZASMLOAD (which would undoubtedly corrupt your calculator)
The second byte is 0x8D (smiley face ). It, along with the first byte, works as a signature that lets ZX7Load ensure it is in fact loading a ZX7-compressed program.
The last 2 bytes of the header are the program's uncompressed size. This is used to insert enough memory in the region for the uncompressed program.
More info about the header (and ZX7Load in general) is contained in the included README so make sure you read it!
So far I've only tested it on stock TI-82 stats.fr (French TI-83) but it should work on regular 83s just as well.
You can download it at http://ceme.tech/DL2524
Enjoy!
Targz