kl99 Posted April 22, 2018 Share Posted April 22, 2018 I was able to identify all 23 line numbers, they are stored as hexadecimal words, so two byte each. Quote Link to comment Share on other sites More sharing options...
kl99 Posted April 22, 2018 Share Posted April 22, 2018 (edited) okay. i will try to relocate it now and check the results EDIT: poking all wanted values to E100 (-7936) was successful. Now I will try to run MCHL in addition.And if that works as well I will try to add my dump program. Edited April 22, 2018 by kl99 Quote Link to comment Share on other sites More sharing options...
kl99 Posted April 22, 2018 Share Posted April 22, 2018 (edited) 1 CALL POKE(-7936, 2, 12, 224, 0, 29, 1, 2, 0)2 CALL POKE(-7928, 64, 0, 2, 1, 225, 128, 2, 2)3 CALL POKE(-7920, 0, 16, 204, 112, 6, 66, 22, 253, 4, 91)4 CALL MCHL(-7936)5 PRINT "DONE" Is this correct? It did crash. EDIT: edited to change the buffer to >E180 Now it did RUN but there was it was not performing line 5, the PRINT command. Could it be that the assembly code exits wrong so there is no nice return to the basic prg? Edited April 22, 2018 by kl99 Quote Link to comment Share on other sites More sharing options...
+mizapf Posted April 22, 2018 Author Share Posted April 22, 2018 Could you try to simply let the program be called and return? CALL POKE(-7936,4,91) CALL MCHL(-7936) 045B = B *R11 = RT Quote Link to comment Share on other sites More sharing options...
kl99 Posted April 22, 2018 Share Posted April 22, 2018 (edited) yes, will do that Michael. However I peeked now in the expected area where we wrote the assembler code. That was still intact. And I peeked the 16 values from -7808 to -7791. It seems writing was done, it is matching the bank #3, however the non hidden one. 0,0,6,160,38,88,6,160,38,42,200,2,234,98,4,224,242,29 Edited April 22, 2018 by kl99 Quote Link to comment Share on other sites More sharing options...
kl99 Posted April 22, 2018 Share Posted April 22, 2018 Could you try to simply let the program be called and return? CALL POKE(-7936,4,91) CALL MCHL(-7936) 045B = B *R11 = RT this worked. i got a PRINT statement executed that followed those two lines. Quote Link to comment Share on other sites More sharing options...
kl99 Posted April 22, 2018 Share Posted April 22, 2018 so all that is not working yet is the bank switching, or? Quote Link to comment Share on other sites More sharing options...
kl99 Posted April 22, 2018 Share Posted April 22, 2018 yes, will do that Michael. However I peeked now in the expected area where we wrote the assembler code. That was still intact. And I peeked the 16 values from -7808 to -7791. It seems writing was done, it is matching the bank #3, however the non hidden one. 0,0,6,160,38,88,6,160,38,42,200,2,234,98,4,224,242,29 Yes, this is matching the first 32 hexadecimal values of the dump of bank 3. so the switching was not working, the copying DID work! 00 00 06 A0 26 58 06 A0 26 2A C8 02 EA 62 04 E0 Quote Link to comment Share on other sites More sharing options...
+mizapf Posted April 22, 2018 Author Share Posted April 22, 2018 Facepalm ... my bad. It must be SBO 0, not SBO 1. Accordingly, the values in the first line must be 29,0 and not 29,1. If that turns out not to work, we can try SBZ 0 (30,0). 1 Quote Link to comment Share on other sites More sharing options...
kl99 Posted April 22, 2018 Share Posted April 22, 2018 crashed with 29,0 in line 1. will try 30,0 in line 1 now. please stay available. Quote Link to comment Share on other sites More sharing options...
kl99 Posted April 22, 2018 Share Posted April 22, 2018 (edited) it did run now. will peek into the area to see if it did what we want 1 CALL POKE(-7936,2,12,224,0,30,0,2,0)2 CALL POKE(-7928,64,0,2,1,225,128,2,2)3 CALL POKE(-7920,0,16,204,112,6,66,22,253,4,91)4 CALL MCHL(-7936)5 PRINT "DONE" Edited April 22, 2018 by kl99 Quote Link to comment Share on other sites More sharing options...
kl99 Posted April 22, 2018 Share Posted April 22, 2018 (edited) again, bank #3. the non-hidden one. with 29,0 it crashed into an internal server error again. Edited April 22, 2018 by kl99 Quote Link to comment Share on other sites More sharing options...
+mizapf Posted April 22, 2018 Author Share Posted April 22, 2018 If it crashes with SBO 0, then this is more likely to be correct; it means it "cares" what bank is active. In that case we must reset it with SBZ 0 before returning. Quote Link to comment Share on other sites More sharing options...
kl99 Posted April 22, 2018 Share Posted April 22, 2018 If it crashes with SBO 0, then this is more likely to be correct; it means it "cares" what bank is active. In that case we must reset it with SBZ 0 before returning. can you post how to change the program? I would be needing hours Quote Link to comment Share on other sites More sharing options...
+mizapf Posted April 22, 2018 Author Share Posted April 22, 2018 ... 3 CALL POKE(-7920,0,16,204,112,6,66,22,253,30,0,4,91) Quote Link to comment Share on other sites More sharing options...
kl99 Posted April 22, 2018 Share Posted April 22, 2018 ... 3 CALL POKE(-7920,0,16,204,112,6,66,22,253,30,0,4,91) thank you a lot. it seems we are almost there. the program returned to the title screen. however the ram shows the correct values of the hidden(!) bank at -7808 to -7792. Quote Link to comment Share on other sites More sharing options...
kl99 Posted April 22, 2018 Share Posted April 22, 2018 WORKED!!! Quote Link to comment Share on other sites More sharing options...
kl99 Posted April 22, 2018 Share Posted April 22, 2018 and in Line 3 we have the first two written values as the repeater count, right? 0, 16 means repeating 0016 times, i am trying it now with 512, therefore 2, 0 Quote Link to comment Share on other sites More sharing options...
kl99 Posted April 22, 2018 Share Posted April 22, 2018 Big Success!!! First 512 bytes seem to match the hidden rom bank of the ugly print out from the documents we have. I have recorded the moment in a video which will is currently uploaded to youtube. Quote Link to comment Share on other sites More sharing options...
+mizapf Posted April 22, 2018 Author Share Posted April 22, 2018 Cool. I almost see the chequered flag. Take care not to use too big values for your buffer - you may run over other data. Quote Link to comment Share on other sites More sharing options...
kl99 Posted April 22, 2018 Share Posted April 22, 2018 2 Quote Link to comment Share on other sites More sharing options...
fabrice montupet Posted April 22, 2018 Share Posted April 22, 2018 Cool :-)Where is the deposit of the dumped ROM chips? Quote Link to comment Share on other sites More sharing options...
kl99 Posted April 22, 2018 Share Posted April 22, 2018 Cool :-) Where is the deposit of the dumped ROM chips? the hidden bank is currently being dumped. the remaining ones can be found here http://atariage.com/forums/topic/258370-ti-992-general-system-rom-dump/?do=findComment&comment=3618660 Quote Link to comment Share on other sites More sharing options...
fabrice montupet Posted April 22, 2018 Share Posted April 22, 2018 OK, thank you. Reading your previous message, I thought that the dump of the hidden bank was finalized.For the remaining ones, I have downloaded them at the time. Quote Link to comment Share on other sites More sharing options...
kl99 Posted April 22, 2018 Share Posted April 22, 2018 (edited) Here is the last Eprom, that was missing til now: romB-4000-5fff.bin dump-succeeder.bas 1 GOTO 10010 CALL POKE(-7936,2,12,224,0,29,0,2,0)20 CALL POKE(-7928,94,0,2,1,225,128,2,2)30 CALL POKE(-7920,2,0,204,112,6,66,22,253,30,0,4,91)40 CALL MCHL(-7936)100 OPEN #1:"HEXBUS.20.B=9600.D=7.S=1.P=E",OUTPUT110 FOR I=-7808 TO -7297120 CALL PEEK(I,P)130 H1=INT(P/16)140 H2=P-H1*16150 IF H1>9 THEN 180160 H1$=CHR$(48+H1)170 GOTO 190180 H1$=CHR$(87+H1)190 IF H2>9 THEN 220200 H2$=CHR$(48+H2)210 GOTO 230220 H2$=CHR$(87+H2)230 PRINT #1:H1$;H2$;240 PRINT H1$;H2$;250 NEXT I260 CLOSE #1 Line 1 was commented out when I wanted to run the POKEs. Line 20 the first value after the address -7928 got increased by 2 to jump by 512 bytes. Each run transmitted 512 bytes over the Hex-Bus via the RS232 device. This was done 16 times to get 8192 bytes in total. Next step is verifying the ROM dump against the print out we have by making the binary match the formatting of the print out. This should reveal any diffs best. Many thanks to Mike Wright and M.Zapf! Edited April 22, 2018 by kl99 2 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.