                      TI-85 ROM Patcher v1.01 (Bug Fix)

                              by Richard Lewis
                         A West Side Tech Production

DISCLAIMER: I'm not responsible for anything related to you.

If you have a word wrap feature on your text file reader, turn it on.

USE: This sucker is for implementing the use of extra ROM calls over what ZShell has.  For the demo, I just used the normal ZShell ROM calls.  The only reason you might need to use the stuff in the demo files under ZShell is if you need all the speed you can get.

This library works by copying the data in the specified patch file to the spot pointed at by XX, which is located at the beginning of the program.  XX can easily be changed, and the header file, "ZSROM.h" will adjust.  I designed it that way, so you can put the patches anywhere in the 85's RAM.

Any good ASM programmer that has ever worked with variables should understand what is going on in my test program.

On a side note, I did a little stack manipulation with IX. (For the return data on the call.

Start is where the real program code starts.  (Hmm, was that obvious?)

If you want to design a Patch file, look at the format of "ZSROM.asm".  All patch files must follow the same pattern.  First is the header, followed by the number ROM routines.

Then comes the actual ROM data.  Each one is composed of a two byte pointer to the routine.  The ROM version must go in the order they are in in "ZSROM.asm".  (ROM 10.0 patches, then 9.0, 8.0, 6.0, 4.0, and finally 3.0A)

"ZSROM.asm" must be compiled so that the first byte of the file is the first byte of the header.  The string85 program that comes with zshell isn't capable of this, but the Usgard version is.

