At some point last week, I believe around Wednesday, I realized that certain Ion (and Doors CS) programs crashed when run on the TI-83+ edition of Doors, yet only on a real TI-83+ running ROM 1.18. When tested in VTI with 1.12 and the TI Flash Debugger with 1.16, nothing of the sort happened. This led me to deduce that the problem could not be related to the archive, since the programs did not crash in the Flash Debugger. I began by trying to brainstorm what might be the problem. I looked through the Ion routines I was using, noticing a bug in the iRandom routine and fixing it. This cleared up a crash problem on the emulated calcs, but the crash on the real calc remained. I began to add modules into Doors CS to debug it. First I had it check and display the mem location from which programs were being copied. This showed that it was working correctly. I repeated the procedure with the program size, thinking perhaps it was creating programs of size 0 or infinity. Once again, the check showed that size was being registered correctly. In the meantime, I had a TI-83+ port of the Password Protection SE and DCS Pong v1.0, ironing out their bugs, and finding the rand error. After trying out a couple of sample programs and seeing that they only crashed when actually calling the library routines, I thought that perhaps the library table was being copied incorrectly. It seemed unlikely since it worked on the emulators, but I first inserted a debug segment in Doors CS that analyzed the lib table. It showed that the pointers were being set correctly. I then checked the first two bytes of each routine as it was pointed to; once again, it was correctly set. In desperation, I put the routine into a sample program, thinking that the swap was causing the crash. Still nothing; the routines gave exactly the correct value. So here I am now, stumped and frustrated.
In other news, TI-Freak8x helped me in the archives project by uploading the screenshots for all of my programs to here from ticalc.org. I have also helped him with a neat project of his, a page in which he is trying to catalogue all of the TI calculator community sites on the Internet. You can check it out right here.