| Index | wersja polska |
Written by dr. Samir Ribić, Sarajevo, Bosnia and Herzegovina, 10. Jul 2014
Casio fx-8000G was my first pocket programmable device, that I received in 1988 and I still love it. For Casio fx-8000g I wrote many logical games (including chess and reversi), adventures, lot of mathematical and painting programs, electrical engineering software, but no one ever wrote an arcade game during 28 years of its existence. There was no read key command, screen can be displayed only statically, and the language is very slow. Machine code was not published as alternative until 2011.
But, when hacker wishes to do something, it is never late. And now, we have first published arcade game: Space Invaders (with shields) for Casio fx-8000g. There is no need to speak more about this game.
Use left and right arrow keys to move the cannon, up key to shoot. After three lives are lost, program returns to home screen.

To enter Space invaders follow the procedure:
Xmin -10
max 10
scl 1
Ymin -10
max 10
scl 1
Xmin -10
max 10
scl 0
Ymin -10
max 10
scl 0
Ans→B S<2⇒Goto 0 0→M 0.3594→A[42] 1.00419048E41→A[43]~A[44] 1.00419848E41→A[45] 1.0007705E41→A[46] Lbl 0 S=0⇒Goto 1 Range 1,95,0,1,63,0 Cls 8→C Lbl 3 " " Dsz C Goto 3 11→A Lbl 1 53→C 32→D B<0⇒B+2xy32→B Lbl 2 Frac .5B=0⇒Plot A,C Frac .5B≠0⇒Isz M Int .5B→B Isz C C=57⇒49→C Frac ((D-1)÷8)=0⇒Dsz A Dsz D Goto 2 A+8→A 0→S Plot 0,0
(˗5÷9)×(1E˗44)→Z[356]~Z[358]
2→S Hex 4244EF40:Prog 0 5AF7415B:Prog 0 37600008:Prog 0 70000000:Prog 0 FF57A820:Prog 0 F0205EA6:Prog 0 035795F0:Prog 0 5ED00040:Prog 0 5A805EB3:Prog 0 035EB200:Prog 0 80201BBA:Prog 0 61744508:Prog 0 405A805E:Prog 0 B5005EB0:Prog 0 045EB110:Prog 0 56A20F56:Prog 0 A50056A4:Prog 0 2C80200B:Prog 0 B1017445:Prog 0 255EB108:Prog 0 Dec M◿
2→S Hex 42452F40:Prog 0 5AF7415B:Prog 0 37600008:Prog 0 70000000:Prog 0 C8DEC89C:Prog 0 C87AC870:Prog 0 C87AC89C:Prog 0 C8DE8020:Prog 0 0BB10174:Prog 0 45305EB1:Prog 0 200BB001:Prog 0 74452540:Prog 0 5CD05EA7:Prog 0 045EB008:Prog 0 C8000BB0:Prog 0 01744558:Prog 0 480A0BA7:Prog 0 01744555:Prog 0 5E920A2B:Prog 0 D0017445:Prog 0 Dec M◿
2→S Hex 42456F40:Prog 0 5AF7415B:Prog 0 37600008:Prog 0 70000000:Prog 0 8C60474C:Prog 0 4C018020:Prog 0 4C606047:Prog 0 4C23F05A:Prog 0 74458C2B:Prog 0 F0807F45:Prog 0 8C5ED000:Prog 0 56A3105E:Prog 0 A704F623:Prog 0 04A30F5B:Prog 0 92627445:Prog 0 B7415A80:Prog 0 425A2140:Prog 0 5A216047:Prog 0 30AE422B:Prog 0 42027445:Prog 0 Dec M◿
2→S Hex 4245AF40:Prog 0 5AF7415B:Prog 0 37600008:Prog 0 70000000:Prog 0 D1600008:Prog 0 7045D441:Prog 0 5A20425A:Prog 0 7E405A7E:Prog 0 604730AA:Prog 0 422B4202:Prog 0 7445D160:Prog 0 000A7045:Prog 0 D40F1262:Prog 0 0BA70174:Prog 0 45925EA5:Prog 0 04F02207:Prog 0 A160405C:Prog 0 000A7082:Prog 0 80B5020A:Prog 0 35227F46:Prog 0 Dec M◿
2→S Hex 4245EF40:Prog 0 5AF7415B:Prog 0 37600008:Prog 0 70000000:Prog 0 635EB500:Prog 0 80B50256:Prog 0 F15D5CF1:Prog 0 820AF120:Prog 0 A9322B32:Prog 0 027C4617:Prog 0 0BA6017C:Prog 0 0000405D:Prog 0 20604740:Prog 0 56A50056:Prog 0 F15B5CF1:Prog 0 820AF1A0:Prog 0 A9322BB2:Prog 0 707C465A:Prog 0 2B710274:Prog 0 46205EF1:Prog 0 Dec M◿
2→S Hex 42462F40:Prog 0 5AF7415B:Prog 0 37600008:Prog 0 70000000:Prog 0 A0A9322B:Prog 0 B2707C46:Prog 0 5A2B7102:Prog 0 74463140:Prog 0 5BA0415A:Prog 0 80425C00:Prog 0 60000A40:Prog 0 5A806047:Prog 0 400BA501:Prog 0 7C44FC70:Prog 0 461754F1:Prog 0 8203A4A0:Prog 0 704675A0:Prog 0 B50180B5:Prog 0 42239000:Prog 0 74467580:Prog 0 Dec M◿
2→S Hex 42466F40:Prog 0 5AF7415B:Prog 0 37600008:Prog 0 70000000:Prog 0 B5025EB5:Prog 0 00C00051:Prog 0 90239010:Prog 0 7C468E23:Prog 0 90087C46:Prog 0 9A239020:Prog 0 7C46A670:Prog 0 46BE23A5:Prog 0 567C46BE:Prog 0 02A50170:Prog 0 46BE23A5:Prog 0 007C46BE:Prog 0 03A50170:Prog 0 46BE2BD0:Prog 0 017C46BE:Prog 0 5ED00140:Prog 0 Dec M◿
2→S Hex 4246AF40:Prog 0 5AF7415B:Prog 0 37600008:Prog 0 70000000:Prog 0 5CC40A70:Prog 0 A27F46BB:Prog 0 02F00160:Prog 0 474C405D:Prog 0 200A70A2:Prog 0 8020C80F:Prog 0 C80FC808:Prog 0 C80FC80F:Prog 0 80202BD0:Prog 0 01744712:Prog 0 54D1075C:Prog 0 F084A8C2:Prog 0 002B4202:Prog 0 7C47105E:Prog 0 D000AC42:Prog 0 2B420274:Prog 0 Dec M◿
2→S Hex 4246EF40:Prog 0 5AF7415B:Prog 0 37600008:Prog 0 70000000:Prog 0 46E75EB2:Prog 0 08604743:Prog 0 0095017E:Prog 0 47125695:Prog 0 30009601:Prog 0 7E471256:Prog 0 96300297:Prog 0 01704712:Prog 0 D0700CD2:Prog 0 3F600620:Prog 0 57908057:Prog 0 80E05EE7:Prog 0 7D600100:Prog 0 5EB3031B:Prog 0 BA617447:Prog 0 2770456B:Prog 0 Dec M◿
2→S Hex 42472F40:Prog 0 5AF7415B:Prog 0 37600008:Prog 0 70000000:Prog 0 54A7A448:Prog 0 6049604A:Prog 0 6003C501:Prog 0 74473358:Prog 0 5EB26080:Prog 0 200BB201:Prog 0 74474358:Prog 0 1CD1071C:Prog 0 F0845800:Prog 0 007044F1:Prog 0 47554755:Prog 0 47554755:Prog 0 47203A30:Prog 0 EC3A5D38:Prog 0 35335B5A:Prog 0 0E5D3033:Prog 0 Dec M◿
2→S Hex 42476F40:Prog 0 5AF7415B:Prog 0 04600008:Prog 0 70000000:Prog 0 34875B5A:Prog 0 01434D00:Prog 0 4E45494C:Prog 0 41000000:Prog 0 Dec M◿
0000: ORG &h44F0
44F0: ; Put Prog "ALIEN" to the file editor area
44F0: ; Registers
44F0: ; R24 alien lines counter
44F0: ; R25 empty lines
44F0: ; R120,R56 - index register IX
44F0: ; R121,R57 - index register IY
44F0: ; R122,R58 - index register IZ
44F0: ; R10 - coded direction of every alien line
44F0: ; R23 - ROWMOVE loop counter
44F0: ; R101 - help register, to calculate ROWMOVE position
44F0: ; R83 - Test bit during row move
44F0: ; R82 - bomb shape
44F0: ; R34 - check if edge is empty
44F0: ; R26, R27 delay loop counter
44F0: ; R29 - relative bomb position
44F0: ; R81 - Bomb position increment
44F0: ; R80 - empty vertical strip of 8 pixels
44F0: ; R31 - relative cannon position
44F0: ; R42 - required by ROM
44F0: ; R84 - Bomb column
44F0: ; R85 - Cannon position
44F0: ; R22 - Lives
44F0: ; R21 - Unclean rows
44F0: ; R100,R41 bullet pos
44F0: ; R40 - bullet is flying
44F0: FF db &hFF ; EOF marker
44F1: STARTPROG
44F1: LIFE:
44F1: 57A820 LDM R80..R81,0
44F4: F020 INV R80 ; Avoid code FF in binary in order not to damage file editor
44F6: 5EA603 LD R22,3
44F9: 5795F0 ldm r77..r79,&h30 ;'0', three ASCII digits of the score
44FC:
44FC:
44FC: LEVEL:
44FC: 5ED000 LD R40,0 ; Bullet is not fired
44FF: 405A80 LDW IX,&h5A80 ; Start of video memory
4502: 5EB303 LD R27,3 ; CLSLOOP 3*256 bytes
4505: 5EB200 LD R26,0
4508: CLS:
4508: 8020 ST +(IX),R80 ; R80 contains &hFF, which is empty verical strip of 8 pixels
450A: 1BBA61 SBM R26..R27,1
450D: 744508 JMP NZ,CLS
4510:
4510: TOP:
4510: 405A80 LDW IX,&h5A80 ; Start of video memory
4513: 5EB500 LD R29,0 ; Bomb position
4516: 5EB004 LD R24,4 ; 4 rows of aliens
4519: 5EB110 LD R25,16 ; aliens start from the 16 column
451C: 56A20F LD R82,&h0F ; Bomb is four pixels
451F: 56A500 LD R85,0 ; cannon is on the left of the screen
4522: 56A42C LD R84,44 ; bomb starts from the 44 column
4525: LPSCENE1:
4525: 8020 ST +(IX),R80 ; &hFF is space at the begin of aliens
4527: 0BB101 SB R25,1
452A: 744525 JMP NZ,LPSCENE1
452D: 5EB108 LD R25,08 ; Now plot 8 aliens in loop
4530: LPSCENE2:
4530: C8DE ST +(IX),&hDE ; this is shape of the alien
4532: C89C ST +(IX),&h9c
4534: C87A ST +(IX),&h7A
4536: C870 ST +(IX),&h70
4538: C87A ST +(IX),&h7A
453A: C89C ST +(IX),&h9C
453C: C8DE ST +(IX),&hDE
453E: 8020 ST +(IX),R80 ; space between aliens
4540: 0BB101 SB R25,1
4543: 744530 JMP NZ,LPSCENE2
4546: 5EB120 LD R25,32 ; in the remaining rows the space is 32 pixels, 16 to the right edge and 16 from the left edge
4549: 0BB001 SB R24,1
454C: 744525 JMP NZ,LPSCENE1 ; after this loop all four rows (total 32 aliens) are displayed
454F: 405CD0 LDW IX,&h5CD0 ; IX points to the row with shields in the video memory
4552: 5EA704 LD R23,4 ; four shields
4555: SHIELDLOOP:
4555: 5EB008 LD R24,8 ; shield is a simple block of 8x8 pixels
4558: SHIELDPLOT:
4558: C800 ST +(IX),&h00
455A: 0BB001 SB R24,1
455D: 744558 JMP NZ,SHIELDPLOT ; at the end of the loop shield is plotted
4560: 480A ADW IX,10 ; space between shields
4562: 0BA701 SB R23,1
4565: 744555 JMP NZ,SHIELDLOOP ; and repeat until all four are plotted
4568: GAMELOOP:
4568: 5E920A LD R10,&h0A ; Lower nibble of R10 contains code where to move row of aliens. Each row has one bit, value 0 moves the row left, value 1 right
456B: ROWMOVEOOP:
456B:
456B: 2BD001 TSB R40,1 ; If the bullet is flying, R40 will be 1
456E: 74458C JMP NZ,MOVEALIENS ; If not, just skip deleting the bullet
4571:
4571: 60474C CAL XCGIXRP ; get bullet position
4574: 4C01 SBW IX,1 ; put the empty vertical strip of 8 pixels at bullet position
4576: 8020 ST +(IX),R80 ; Due to instruction set and requirement that byte with &hFF is forbiden it is a few bytes longer than should be
4578: 4C60 SBW IX,96 ; Put the bullet position one row above (8 pixels)
457A: 60474C CAL XCGIXRP ; store bullet position
457D: 23F05A TSB R120,&h5A ; Check if IX is below 5A80 (video memory)
4580: 74458C JMP NZ,MOVEALIENS
4583: 2BF080 TSB R56,&h80
4586: 7F458C JMP NC,MOVEALIENS
4589: 5ED000 LD R40,0 ; bullet is out of screen, so it is no longer active
458C: MOVEALIENS:
458C: 56A310 LD R83,&h10 ; This is bit mask used for testing R19
458F: 5EA704 LD R23,4 ; Four rows
4592: MULTIROWMOVE:
4592: F623 ROD R83 ; Move mask, it will be 00001000 00000100 00000010 or 00000001
4594: 04A30F AN R83,&hF ; after setting upper bits to 0
4597: 5B9262 BIT R10,R83 ; Binary test for this row
459A: 7445B7 JMP NZ,TORIGHT
459D: TOLEFT: ; Move the row to left
459D: 415A80 LDW IY,&h5A80 ; Set up registers for moving the row
45A0: 425A21 LDW IZ,&h5A21
45A3: 405A21 LDW IX,&h5A21
45A6: 604730 CAL OTHERROW ; add 96*R23 to all three index registers
45A9: AE42 LD R34,(IZ)- ; Test if there is space on the screen
45AB: 2B4202 TSB R34,R80
45AE: 7445D1 JMP NZ,NOROWMOVE ; if not, change direction
45B1: 600008 CAL &h0008 ; bup instruction will move the alien row one pixel left
45B4: 7045D4 JMP ENDROWMOVE
45B7: TORIGHT: ; Move the row to the right
45B7: 415A20 LDW IY,&h5A20 ; Set up registers for moving the row
45BA: 425A7E LDW IZ,&h5A7E
45BD: 405A7E LDW IX,&h5A7E
45C0: 604730 CAL OTHERROW ; add 96*R23 to all three index registers
45C3: AA42 LD R34,(IZ)+ ; Test if there is space on the screen
45C5: 2B4202 TSB R34,R80 ; &hFF
45C8: 7445D1 JMP NZ,NOROWMOVE ; if not, change direction
45CB: 60000A CAL &h000A ; bdn instruction will move the alien row one pixel right
45CE: 7045D4 JMP ENDROWMOVE
45D1: NOROWMOVE:
45D1: 0F1262 XR R10,R83 ; XOR with mask will flip the direction bit
45D4: ENDROWMOVE:
45D4: 0BA701 SB R23,1
45D7: 744592 JMP NZ,MULTIROWMOVE ; Repeat until all four rows of aliens are moved
45DA: 5EA504 LD R21,4 ; We will check four rows if they are empty
45DD: F022 INV R82 ; negate bomb shape from upper four pixel line to lower four pixel line
45DF: 07A160 XR R81,&h60; Bomb position is changed by 96 or 0 every two passes
45E2: 405C00 LDW IX,&h5C00 ; calculate video memory area where bomb appears
45E5: 0A7082 AD R56,R84 ; lower byte of IX
45E8: 80B502 ST (IX+R29),R80 ; put the bomb
45EB: 0A3522 AD R29,R81 ; increment bomb position
45EE: 7F4663 JMP NC,MOVEBOMB ; if bomb did not reach the end
45F1:
45F1:
45F1:
45F1: 5EB500 LD R29,0 ; erase the bomb
45F4: 80B502 ST (IX+R29),R80
45F7: TESTKILL:
45F7: 56F15D LD R121,&h5D ; take cannon row in video memory
45FA: 5CF182 LD R57,R84
45FD: 0AF120 AD R57,&h20
4600: A932 LD R26,(IY)+ ; check position in cannon row, bomb column
4602: 2B3202 TSB R26,R80; &hFF if not empty skip
4605: 7C4617 JMP Z,NOTKILLED
4608: 0BA601 SB R22,1 ; Reduce life counter
460B: 7C0000 JMP Z,0 ; exit from program if life=0
460E: NEWLIFE:
460E: 405D20 LDW IX,&h5D20 ; delete cannon row
4611: 604740 CAL CLLINE
4614: 56A500 LD R85,0 ; cannon to the left
4617:
4617: NOTKILLED:
4617: 56F15B LD R121,&h5B ; We need to fire new bomb, because previous one reached ground
461A: 5CF182 LD R57,R84
461D: 0AF1A0 AD R57,&hA0 ; It is in row which starts in video memory at 5BA0
4620:
4620: FINDBOMBERRT:
4620: A932 LD R26,(IY)+ ; Now search for byte &h70 (middle of alien) starting from the current position
4622: 2BB270 TSB R26,&h70
4625: 7C465A JMP Z,BOMBERPOS
4628: 2B7102 TSB R57,R80 ; &hFF at 5BFF is end of the row of the bombing aliens
462B: 744620 JMP NZ,FINDBOMBERRT
462E: 5EF1A0 LD R57,&hA0
4631: FINDBOMBERLT:
4631: A932 LD R26,(IY)+ ; search again, but now from the start of the bottom aliens row
4633: 2BB270 TSB R26,&h70
4636: 7C465A JMP Z,BOMBERPOS
4639: 2B7102 TSB R57,R80 ;&hFF
463C: 744631 JMP NZ,FINDBOMBERLT
463F: ; All aliens in bottom row are killed, move them down
463F: 405BA0 LDW IX,&h5BA0
4642: 415A80 LDW IY,&h5A80
4645: 425C00 LDW IZ,&h5C00
4648: 60000A CAL &h000A
464B: 405A80 LDW IX,&h5A80 ; delete the top row
464E: 604740 CAL CLLINE
4651:
4651: 0BA501 SB R21,1
4654: 7C44FC JMP Z,LEVEL ; after four aliens rows moved, down restart the level
4657: 704617 JMP NOTKILLED
465A: ; Row killed!
465A: BOMBERPOS:
465A: 54F182 LD R84,R57
465D: 03A4A0 SB R84,&hA0 ; Now we have relative bomb position
4660:
4660: 704675 JMP TESTKBD
4663:
4663: MOVEBOMB:
4663: A0B501 LD R72,(IX+R29) ; get the byte from the bomb position
4666: 80B542 ST (IX+R29),R82 ; put the bomb shape
4669: 239000 TSB R72,0 ; Is it part of shield?
466C: 744675 JMP NZ,TESTKBD ; if not skip shield damaging
466F: 80B502 ST (IX+R29),R80 ; erase one strip of the shield
4672: 5EB500 LD R29,0 ; move bomb to the top
4675: TESTKBD:
4675: C000 PST KO,&h00 ; Enable all test kbd lines
4677: 5190 GST R72,KI ; Read keyboard
4679: 239010 TSB R72,&h10 ; Check if right key is pressed
467C: 7C468E JMP Z,RIGHTKEY
467F: 239008 TSB R72,&h08 ; Check if left key is pressed
4682: 7C469A JMP Z,LEFTKEY
4685: 239020 TSB R72,&h20 ; Check if up key is pressed
4688: 7C46A6 JMP Z,FIREROCKET
468B: 7046BE JMP DRAWCANON
468E:
468E: RIGHTKEY:
468E: 23A556 TSB R85,86 ; Check for right border of the screen
4691: 7C46BE JMP Z,DRAWCANON
4694: 02A501 AD R85,1 ; Move cannon position
4697: 7046BE JMP DRAWCANON
469A: LEFTKEY:
469A: 23A500 TSB R85,0 ; Check for left border of the screen
469D: 7C46BE JMP Z,DRAWCANON
46A0: 03A501 SB R85,1 ; Move cannon position
46A3: 7046BE JMP DRAWCANON
46A6: FIREROCKET:
46A6: 2BD001 TSB R40,1 ; If the bullet is currently flying you can not fire the new one
46A9: 7C46BE JMP Z,DRAWCANON
46AC: 5ED001 LD R40,1
46AF: 405CC4 LDW IX,&h5CC4; Bullet position, one row above cannon
46B2: 0A70A2 AD R56,R85 ; lower IX
46B5: 7F46BB JMP NC,STOREROCKETPOS
46B8: 02F001 AD R120,1 ; 8 bit arithmetic is used
46BB: STOREROCKETPOS:
46BB:
46BB: 60474C CAL XCGIXRP ; Remember IX
46BE: DRAWCANON:
46BE: 405D20 LDW IX,&h5D20 ; Now find cannon position
46C1: 0A70A2 AD R56,R85 ; lower IX
46C4: 8020 ST +(IX),R80 ; Cannon shape
46C6: C80F ST +(IX),&h0f
46C8: C80F ST +(IX),&h0f
46CA: C808 ST +(IX),&h08
46CC: C80F ST +(IX),&h0f
46CE: C80F ST +(IX),&h0f
46D0: 8020 ST +(IX),R80
46D2:
46D2: 2BD001 TSB R40,1 ; If bullet is not flying skip plotting
46D5: 744712 JMP NZ,REFRESH
46D8:
46D8: 54D107 LD R120,R41 ; restore bullet position
46DB: 5CF084 LD R56,R100
46DE: A8C200 LD R34,(IX+0) ; check what it is there
46E1: 2B4202 TSB R34,R80 ; if empty space &hFF
46E4: 7C4710 JMP Z,PLOTROCKET ; jump to plot the bullet
46E7:
46E7: FINDHOLE:
46E7: 5ED000 LD R40,0 ; Bump into alien or shield
46EA: AC42 LD R34,(IX)- ; find the beginning of the shape
46EC: 2B4202 TSB R34,R80 ;&hFF
46EF: 7446E7 JMP NZ,FINDHOLE
46F2:
46F2: 5EB208 LD R26,8 ; delete alien or shield
46F5: 604743 CAL CLLINE1
46F8: 009501 ADB R77,1 ; increase score lowest digit
46FB: 7E4712 JMP NH,REFRESH ; BCD arithmetic, after '9' the H flag will be set
46FE: 569530 LD R77,&h30 ; reset lowest digit to '0'
4701: 009601 ADB R78,1 ; increase tens
4704: 7E4712 JMP NH,REFRESH
4707: 569630 LD R78,&h30 ;'0'
470A: 029701 AD R79,1 ; increase hundreds, after 999 killed aliens, score will look strange
470D: 704712 JMP REFRESH
4710: PLOTROCKET:
4710: ; Plot the bullet
4710: D070 ST (IX),&h70
4712:
4712: REFRESH:
4712: 0CD23F AN R42,&h3F ; PARAMETER DO REFRESH
4715: 600620 CAL &h0620 ; Call ROM routine to show changes in video memory
4718: 579080 ldm r72..r76,&h20
471B: 5780E0 ldm r64..r71,&h20
471E: 5EE77D ld r55,&h7D ; screen position is stored in R55
4721: 600100 cal &h0100 ;display the string R79..R64
4724:
4724: 5EB303 LD R27,3 ; delay loop 768 times to make game not too fast
4727: DELAY1:
4727: 1BBA61 SBM R26..R27,1 ; Machine code is amazing, even at 900kHz
472A: 744727 JMP NZ,DELAY1
472D:
472D: 70456B JMP ROWMOVEOOP ; Go to inner loop
4730: OTHERROW: ; adjust index registers to point to the correct row of the aliens
4730: 54A7A4 LD R101,R23
4733: OTHER1:
4733: 4860 ADW IX,96
4735: 4960 ADW IY,96
4737: 4A60 ADW IZ,96
4739: 03C501 SB R101,1
473C: 744733 JMP NZ,OTHER1
473F: 58 RTN
4740: CLLINE: ; delete row of the screen
4740: 5EB260 LD R26,96
4743: CLLINE1: ; delete part of the screen
4743: 8020 ST +(IX),R80
4745: 0BB201 SB R26,1
4748: 744743 JMP NZ,CLLINE1
474B: 58 RTN
474C:
474C: XCGIXRP: ; store and restore bullet position
474C: 1CD107 XC R41,R120
474F: 1CF084 XC R100,R56
4752: 58 RTN
4753: ORG &h4755
4755: 7044F1 JMP STARTPROG
4758: 4755475547554755
db 'GUGUGUGU' ; This sequence is also 4755475547554755
4760: 47203A30EC3A5D3835335B5A0E5D303334875B5A01
DB 'G :0',&hEC,':]853[Z',&h0E,']034',&h87,'[Z',01
4775: 434D00 DB 'CM',00 ; PASSWORD 2 LETTERS
4778: 4E45494C41
DB 'NEILA' ; Name 5 letters
477D:
5AE8: 424514 LDW IZ,&H4514 ; destination address-1 5AEB: 405AF7 LDW IX,&H5AF7 ; source address in video memory-1 5AEE: 415B37 LDW IY,&H5B37 ; end of source in video memory 5AF1: 600008 CAL 8 ; transfer block 5AF4: 700000 JMP 0 ; home screen 5AF7: 00 DB 0 ; address needs to be divisible by 4 5AF8: 57A820 db &h57,&hA8,&h20 ; LDM R80..R81,0 etc. ...
List of files in the archive: