|Re: TI-59 ROM (dumping)|
Message #7 Posted by Bill Wiese on 20 Nov 2003, 4:51 p.m.,
in response to message #5 by HrastProgrammer
Keep up the good work!
Do you have a link to the patent PDF??? Love to see it, learn more about the system & CPU architecture...
I've always been interested in the inner foibles of the TI5X calculators. Had one (still do somewhere) when I was in high school til I got my 41C. I was aware of some TI PPC Notes (Maurice Swinnen?? if I recall, ran it) and heard of the mysterious HIR registers and that SBR 239 w/Master Lib. Module did some funky stuff - speedups, etc. I think the TIs had more 'dark secrets' than HPs - perhaps because the HP user community was maybe more outgoing/communicative and had some friendly relations w/HP.
I think OCR extraction from a poorly printed copy may be very problematic to get a running system even if you started w/a 100% perfect emulator. Even the HP emulators whose ROMs were "patent-extracted" (35/45, maybe 41) got a few things wrong until cleaned up or an electronic extraction (or Peter Monta's "photo extraction"!) was performed.
It might be best to electrically extract data from the ROMs
if they are separate/external from the CPU. I vaguely recall that the external ROMs are some kind of serial ROMs.
I've dumped various serial ROMs (Microwire and SPI) in the past using a DOS PC running some C code and talking thru the parallel LPT port for I/O. For quick & dirty one-time thing, writing DOS code for PC will avoid issues w/Windows low-level port access, timing, etc. If clock times are not critical this kinda quick hack might work nicely.
Given possible NMOS/PMOS technologies here, you might need some isolation, level converters, non-5VDC power supply, etc. At least you have some indication of what a ROM dump SHOULD look like: at least you're not totally in the dark, that's a big help to know that you're not getting garbage!
BTW: Does the TMC0501 have any internal ROM inside? Or is it a straight CPU? Hope it's the latter ;)
It's been awhile but IIRC, the TI calc CPUs apparently had some PLA (programmed logic array) areas not only for LED state use but also used for instruction decode/microcode - apparently this allowed instruction set optimization, fitting the right instructions into a limited opcode space. So having generic TMC0501 info might not help the specific TI58 case - but perhaps the ROM dump in the patent would reveal these features.
I always wondered if the external ROM module (i.e, where Master Library Module goes) is capable of running machine code or if it's just user code.
San Jose CA