<x-html>
<html>
There is another flaw in the program you are working from. this
originally was the Asteroids.s file and in Program 20 the LABEL 1 appears
AFTER LABEL 2, and this can't work... I'm surprised it doesn't fail
there...<br><br>
For Asteroids LABEL 1 is the alternate ROM signatures, and thus it should
look like this:<br><br>
<font face="Courier New, Courier" size=4><b>PROGRAM 20 224
BYTES ! (I don't know if this is the right BYTE count...)<br><br>
0: LABEL 0<br>
DPY-ROM VERSION 1 OR 2 ? /1<br>
IF REG1 = 1 GOTO 1<br>
IF REG1 = 2 GOTO 2<br>
GOTO 0<br>
<i>1: LABEL 1<br>
DPY-TESTING ROM F1 - RV1 <br>
ROM TEST @ 6800-6FFF SIG ????<br>
DPY-TESTING ROM D-E1 - RV1<br>
ROM TEST @ 7000-77FF SIG ????<br>
DPY-TESTING ROM C1 - RV1<br>
ROM TEST @ 7800-7FFF SIG ????<br>
DPY-TESTING VECTOR ROM NP3 - RV1<br>
ROM TEST @ 5000-57FF SIG ????<br>
GOTO F<br>
</i>2: LABEL 2<br>
DPY-TESTING ROM F1 - RV2<br>
ROM TEST @ 6800-6FFF SIG ????<br>
DPY-TESTING ROM D E1 - RV2<br>
ROM TEST @ 7000-77FF SIG ????<br>
DPY-TESTING ROM C1 - RV2<br>
ROM TEST @ 7800-7FFF SIG ????<br>
DPY-TESTING VECTOR ROM NP3 - RV2<br>
ROM TEST @ 5000-57FF SIG ????<br>
GOTO F<br><br>
F: LABEL F<br>
DPY-ROM TEST COMPLETE<br>
STOP<br><br>
<br><br>
</b></font>At 12:02 PM 01/03/2002 -0500, Kev wrote:<br><br>
<blockquote type=cite class=cite cite>I still don't understand all the
finer points of programing using the RKSIC<br>
compiler & labels.<br><br>
GOTOs only work within individual programs and EXECUTE (EX) is used to
jump<br>
to another program.<br><br>
Having said that, the following program will compile & attempt to run
but it<br>
doesn't respond to Keyboard inputs other than beep.<br><br>
What did I miss?<br><br>
<br><br>
! *GAMENAME replace with current game name<br>
! *PROGRAMMER replace with current author name<br>
! *DATE replace with original program date<br>
! *MODDATE replace with revision date<br>
! *REVISION replace with revision number<br><br>
<br><br>
<br>
! Donkey Kong Jr Test Routine<br>
! Use in CPU Z80 processor socket<br>
! Program created by MOWERMAN<br>
! Program written on 2/28/02<br>
! Revision Date 2/28/02<br>
! Revision number 0<br>
!<br>
! UNABLE TO TEST SOUND PROCESSOR 8035<br>
! UNABLE TO TEST VID RAM 2P 2R<br>
! UNABLE TO TEST CHARACTER ROMS 3P 3N<br><br>
<br>
SETUP<br><br>
TRAP ACTIVE FORCE LINE NO<br>
TRAP ACTIVE INTERRUPT NO<br><br>
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!<br>
!<br>
! MAIN LOOP ROUTINE<br><br>
! Proposed standard<br>
! 1 = RAM Test<br>
! 2 = ROM Test<br>
! 3 = SND Test<br>
! 4 = I/O Test<br>
! 5 = DIP Test<br>
! 6 = PROBE Test<br>
! 9 = Run UUT<br>
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!<br>
!<br><br>
PROGRAM 0<br>
DPY-DONKEY KONG JR TST<br>
DPY-+-PRESS CONT<br>
STOP<br><br>
MAINLOOP:<br><br>
DPY- 1-RAM 2-ROM 3-SND 4-IO 5-DIP<br>
IF REG1 = 1 GOTO RAMTEST<br>
IF REG1 = 2 GOTO ROMTEST<br>
IF REG1 = 3 GOTO SNDTEST<br>
IF REG1 = 4 GOTO IOTEST<br>
IF REG1 = 5 GOTO DIPTEST<br>
IF REG1 = 6 GOTO PRBTEST<br>
IF REG1 = 9 GOTO RTEST<br>
GOTO MAINLOOP<br><br>
RAMTEST:<br>
EX RAMTST<br>
GOTO MAINLOOP<br>
ROMTEST:<br>
EX ROMTST<br>
GOTO MAINLOOP<br>
SNDTEST:<br>
EX SNDTST<br>
GOTO MAINLOOP<br>
IOTEST:<br>
EX IOTST<br>
GOTO MAINLOOP<br>
DIPTEST:<br>
EX DIPTST<br>
GOTO MAINLOOP<br>
PRBTEST:<br>
EX PRBTST<br>
GOTO MAINLOOP<br>
RTEST:<br>
EX RUNTST<br>
GOTO MAINLOOP<br><br>
<br>
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!<br>
!<br>
!RAM TEST<br><br>
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!<br>
!<br><br>
PROGRAM RAMTST<br>
DPY-TESTING CPU RAM 3A 4A#<br>
RAM SHORT @ 6800-6BFF<br>
DPY-TESTING CPU RAM 3B 4B#<br>
RAM SHORT @ 6400-67FF<br>
DPY-TESTING CPU RAM 3C 4C#<br>
RAM SHORT @ 6000-63FF<br>
DPY-TESTING VID RAM 6R 6P#<br>
RAM SHORT @ 7000-77FF<br><br>
DPY-+-PRESS CONT#<br>
STOP<br><br>
<br>
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!<br>
!<br>
!ROM TEST<br><br>
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!<br>
!<br><br>
PROGRAM ROMTST<br><br>
0: LABEL 0<br>
DPY-ROM VERSION 1 OR 2 ? /1<br>
IF REG1 = 1 GOTO 1<br>
IF REG1 = 2 GOTO 2<br>
GOTO 0<br>
2: LABEL 2<br><br>
! DONKEY KONG JR ROMS 5B/5C/5E F-2<br>
! NOTICE THESE ROMS ARE INTERLEAVED!<br>
!<br><br>
DPY-TESTING ROM 5B<br>
ROM TEST @ 0-FFF SIG 3F16<br>
ROM TEST @ 3000-3FFF SIG 4C8F<br>
DPY-TESTING ROM 5C<br>
ROM TEST @ 1000-17FF SIG AEDA<br>
ROM TEST @ 2000-27FF SIG 49FF<br>
ROM TEST @ 4800-4FFF SIG 3FB8<br>
ROM TEST @ 5800-5FFF SIG 734C<br>
DPY-TESTING ROM 5E<br>
ROM TEST @ 4000-47FF SIG 57D1<br>
ROM TEST @ 2800-2FFF SIG 2799<br>
ROM TEST @ 5000-57FF SIG 56BC<br>
ROM TEST @ 1800-1FFF SIG 8EEC<br><br>
GOTO F<br>
1: LABEL 1<br>
F: LABEL F<br>
DPY-ROM TEST COMPLETE<br>
STOP<br><br>
<br>
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!<br>
!<br>
!SND TEST<br><br>
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!<br>
!<br><br>
PROGRAM SNDTST<br><br>
REG1 = 40<br>
DPY-Rivet SND. CONT=NEXT<br>
DPY-+ SND%1#<br>
0: LABEL 0<br>
WRITE @7C00 = 05<br>
IF REG1 = 25 GOTO 1<br>
GOTO 0<br>
1: LABEL 1<br>
REG1 = 40<br>
DPY-Springs SND. CONT=NEXT SND%1#<br>
2: LABEL 2<br>
WRITE @ 7C00 = 0A<br>
IF REG1 = 25 GOTO 3<br>
GOTO 2<br>
3: LABEL 3<br>
REG1 = 40<br>
DPY-JUMP SND. CONT=NEXT<br>
DPY-+ SND%1#<br>
4: LABEL 4<br>
WRITE @ 7D01 = FF<br>
IF REG1 = 25 GOTO 5<br>
GOTO 4<br>
5: LABEL 5<br>
REG1 = 40<br>
DPY-STOMP SND.CONT=NEXT<br>
DPY-+ SND%1#<br>
6: LABEL 6<br>
WRITE @ 7D02 = FF<br>
IF REG1 = 25 GOTO 7<br>
GOTO 6<br>
7: LABEL 7<br>
REG1 = 40<br>
DPY-COIN SND. CONT=<br>
DPY-+NEXT SND%1#<br>
8: LABEL 8<br>
WRITE @ 7D03 = FF<br>
IF REG1 = 25 GOTO 9<br>
GOTO 8<br>
9: LABEL 9<br>
REG1 = 40<br>
DPY-PRIZE SND. CONT=NEXT<br>
DPY-+ SND%1#<br>
A: LABEL A<br>
WRITE @ 7D05 = FF<br>
IF REG1 = 25 GOTO B<br>
GOTO A<br>
B: LABEL B<br>
REG1 = 40<br>
DPY-DEAD SND. CONT=NEXT SND%1#<br>
C: LABEL C<br>
WRITE @ 7D80 = FF<br>
IF REG1 = 25 GOTO F<br>
GOTO C<br>
F: LABEL F<br>
REG1 = 40<br>
DPY-SND TESTS COMPLETE. PRESS<br>
DPY-+ CONT%1#<br>
STOP<br><br>
<br>
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!<br>
!<br>
!I/O TEST<br><br>
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!<br>
!<br><br>
PROGRAM IOTST<br>
STOP<br><br>
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!<br>
!<br>
!DIP SWITCH TEST<br>
!<br>
! For the DIP Test I was imagining a All on & All off test<br>
! Perhaps a on/off/on/off/on/off/on/off then reverse test would be
better?<br>
!<br>
! Final setup should be factory settings?<br>
!<br>
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!<br>
!<br><br>
PROGRAM DIPTST<br><br>
SWITCHLOOP:<br>
INC REGF<br>
INC REG2<br>
READ @REGF<br>
IF REGE AND 1 >0 GOTO SW6KOFF<br>
GOTO SW6KON<br>
NEXTSW:<br>
IF REGE AND 2 >0 GOTO SW6JOFF<br>
GOTO SW6JON<br>
ADDTEST:<br>
IF REGF >6807 GOTO CONT<br>
GOTO SWITCHLOOP<br><br>
SW6KON:<br>
DPY-#<br>
DPY-6K NUMBER $2 ON<br>
STOP<br>
GOTO NEXTSW<br><br>
SW6JON:<br>
IF REGF=6807 GOTO CONT<br>
DPY-#<br>
DPY-6J NUMBER $2 ON<br>
STOP<br>
GOTO ADDTEST<br><br>
SW6KOFF:<br>
DPY-#<br>
DPY-6K NUMBER $2 OFF<br>
STOP<br>
GOTO NEXTSW<br><br>
SW6JOFF:<br>
IF REGF=6807 GOTO CONT<br>
DPY-#<br>
DPY-6J NUMBER $2 OFF<br>
STOP<br>
GOTO ADDTEST<br><br>
CONT:<br><br>
DPY-#<br>
DPY-DIP TEST COMPLETE<br>
STOP<br><br>
<br><br>
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!<br>
!<br>
!PROBE TEST<br><br>
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!<br>
!<br><br>
PROGRAM PRBTST<br><br>
SYNC ADDRESS<br>
DPY-PLACE PROBE ON POINTS<br>
DPY-+ SHOWN.#<br>
STOP<br>
DPY-FLIP 5J-6.#<br>
STOP<br>
REGB = 1<br>
REG9 = 7D82<br>
REGB = 40<br>
EXECUTE PROGRAM 65<br>
STOP<br><br>
<br>
PROGRAM 65 116 BYTES<br><br>
READ PROBE<br>
REG1 = REGB<br>
1: LABEL 1<br>
IF REG8 = 0 GOTO 2<br>
READ @ REG9<br>
GOTO 3<br>
2: LABEL 2<br>
WRITE @ REG9 = REGA<br>
3: LABEL 3<br>
DEC REG1<br>
IF REG1 > 0 GOTO 1<br>
READ PROBE<br>
REG0 = REG0 AND 7F<br>
IF REG0 = REGB GOTO 4<br>
DPY-+CNT BAD.<br>
GOTO 5<br>
4: LABEL 4<br>
DPY-+ OK.<br>
5: LABEL 5<br>
DPY-+COUNT @0=@B#<br>
STOP<br><br>
<br>
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!<br>
!<br>
!RUN UUT TEST<br><br>
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!<br>
!<br><br>
PROGRAM RUNTST<br>
DPY-RUNNING BOARD<br>
RUN UUT<br>
STOP</blockquote></html>
</x-html>
Received on Fri Mar 01 20:04:24 2002
This archive was generated by hypermail 2.1.8 : Tue Dec 02 2003 - 18:40:41 EST