GARBAGE.PAL
FILE INFORMATION
FILENAME(S): GARBAGE.PAL
FILE TYPE(S): PRG
FILE SIZE: 3.5K
FIRST SEEN: 2025-11-30 21:12:48
APPEARS ON: 1 disk(s)
FILE HASH
17d7ab83d3dd81964e4d24c2a95bd6b17db70d1569af2f6583498bf255f9959b
FOUND ON DISKS (1 DISKS)
| DISK TITLE | FILENAME | FILE TYPE | COLLECTION | TRACK | SECTOR | ACTIONS |
|---|---|---|---|---|---|---|
| TRANSACTOR DISK | GARBAGE.PAL | PRG | DuncanTwain | 26 | 3 | DOWNLOAD FILE |
FILE CONTENT & ANALYSIS
00000000: 01 04 29 04 E8 03 8F 20 2D 2D 2D 20 47 41 52 42 |..).... --- GARB|
00000010: 41 47 45 20 43 4F 4C 4C 45 43 54 4F 52 20 4D 45 |AGE COLLECTOR ME|
00000020: 53 53 41 47 45 20 2D 2D 2D 00 51 04 F2 03 8F 20 |SSAGE ---.Q.... |
00000030: 2D 2D 2D 2D 2D 20 42 59 20 4D 49 43 48 41 45 4C |----- BY MICHAEL|
00000040: 20 54 2E 20 47 52 41 48 41 4D 20 2D 2D 2D 2D 2D | T. GRAHAM -----|
00000050: 2D 00 71 04 FC 03 8F 20 4F 50 45 4E 38 2C 38 2C |-.q.... OPEN8,8,|
00000060: 38 2C 22 30 3A 47 41 52 42 4D 53 47 2C 50 2C 57 |8,"0:GARBMSG,P,W|
00000070: 22 00 7A 04 06 04 9E 37 30 30 00 87 04 10 04 3B |".z....700.....;|
00000080: 2E 4F 50 54 20 4F 38 00 A6 04 1A 04 3B 50 41 4C |.OPT O8.....;PAL|
00000090: 20 41 53 53 45 4D 42 4C 45 52 20 53 4F 55 52 43 | ASSEMBLER SOURC|
000000A0: 45 20 43 4F 44 45 00 AC 04 24 04 3B 00 D1 04 2E |E CODE...$.;....|
000000B0: 04 3B 54 48 49 53 20 42 41 53 49 43 20 50 41 54 |.;THIS BASIC PAT|
000000C0: 43 48 20 50 55 54 53 20 41 20 4D 45 53 53 41 47 |CH PUTS A MESSAG|
000000D0: 45 00 F4 04 38 04 3B 91 20 53 43 52 45 45 4E 20 |E...8.;. SCREEN |
000000E0: 57 48 45 4E 20 42 41 53 49 43 27 53 20 47 41 52 |WHEN BASIC'S GAR|
000000F0: 42 41 47 45 00 17 05 42 04 3B 43 4F 4C 4C 45 43 |BAGE...B.;COLLEC|
00000100: A4 52 20 8A 53 2E 20 42 41 53 49 43 20 49 53 20 |.R .S. BASIC IS |
00000110: 4D 4F 56 45 44 20 A4 00 32 05 4C 04 3B 52 41 4D |MOVED ..2.L.;RAM|
00000120: 20 41 54 20 49 4E 49 54 49 41 4C 49 5A 41 54 49 | AT INITIALIZATI|
00000130: 91 2E 00 38 05 56 04 3B 00 63 05 60 04 48 49 42 |...8.V.;.c.`.HIB|
00000140: 41 53 45 20 B2 24 30 32 38 38 20 3B 4B 45 52 4E |ASE .$0288 ;KERN|
00000150: 41 4C 20 53 43 52 45 45 4E 20 50 41 47 45 20 41 |AL SCREEN PAGE A|
00000160: 44 44 52 00 81 05 6A 04 41 44 44 52 20 20 20 B2 |DDR...j.ADDR .|
00000170: 24 46 42 20 20 20 3B 4D 4F 56 45 20 56 45 43 A4 |$FB ;MOVE VEC.|
00000180: 52 00 A6 05 74 04 50 41 54 43 48 31 20 B2 24 42 |R...t.PATCH1 .$B|
00000190: 35 32 36 20 3B 50 41 54 43 48 20 53 54 41 52 54 |526 ;PATCH START|
000001A0: 20 4F 46 20 D1 B0 00 C7 05 7E 04 50 41 54 43 48 | OF .....~.PATCH|
000001B0: 32 20 B2 24 42 36 30 36 20 3B 50 41 54 43 48 20 |2 .$B606 ;PATCH |
000001C0: 80 20 4F 46 20 D1 B0 00 E6 05 88 04 52 45 54 31 |. OF .......RET1|
000001D0: 20 20 20 B2 24 42 35 32 41 20 3B 9A 49 4E 55 45 | .$B52A ;.INUE|
000001E0: 20 53 54 41 52 54 00 FF 05 92 04 9A 20 20 20 B2 | START...... .|
000001F0: 24 42 36 30 43 20 3B D1 B0 20 A8 20 44 91 45 00 |$B60C ;.. . D.E.|
00000200: 18 06 9C 04 51 55 49 54 20 20 20 B2 24 42 36 30 |....QUIT .$B60|
00000210: 31 20 3B 80 20 D1 49 91 00 3E 06 A6 04 43 4F 4C |1 ;. .I..>...COL|
00000220: B0 20 20 B2 24 30 32 20 20 20 3B 4D 45 53 53 41 |. .$02 ;MESSA|
00000230: 47 45 20 43 4F 4C B0 20 53 A4 52 41 47 45 00 62 |GE COL. S.RAGE.b|
00000240: 06 B0 04 43 4D 45 4D 20 20 20 B2 24 44 38 30 41 |...CMEM .$D80A|
00000250: 20 3B 43 4F 4C B0 20 4D 45 4D B0 59 20 53 54 41 | ;COL. MEM.Y STA|
00000260: 52 54 00 89 06 BA 04 53 43 52 45 45 4E 20 B2 24 |RT.....SCREEN .$|
00000270: 46 44 20 20 20 3B 53 43 52 45 45 4E 20 56 45 43 |FD ;SCREEN VEC|
00000280: A4 52 20 53 A4 52 41 47 45 00 8F 06 C4 04 3B 00 |.R S.RAGE.....;.|
00000290: AC 06 CE 04 AC B2 24 30 33 33 43 20 3B 43 41 53 |......$033C ;CAS|
000002A0: 53 45 54 54 45 20 42 55 46 46 45 52 00 B2 06 D8 |SETTE BUFFER....|
000002B0: 04 3B 00 D8 06 E2 04 3B 49 4E 49 54 49 41 4C 49 |.;.....;INITIALI|
000002C0: 5A 45 20 4D 45 53 53 41 47 45 20 50 41 54 43 48 |ZE MESSAGE PATCH|
000002D0: 20 28 9E 20 38 32 38 29 00 DE 06 EC 04 3B 00 FA | (. 828).....;..|
000002E0: 06 F6 04 49 4E 49 54 20 4C 44 41 20 23 24 30 30 |...INIT LDA #$00|
000002F0: 20 20 20 3B 53 45 54 20 55 50 00 18 07 00 05 53 | ;SET UP.....S|
00000300: 54 41 20 41 44 44 52 20 20 20 20 20 20 20 20 3B |TA ADDR ;|
00000310: 49 4E 44 49 52 45 43 54 00 35 07 0A 05 4C 44 41 |INDIRECT.5...LDA|
00000320: 20 23 24 41 30 20 20 20 20 20 20 20 20 3B 41 44 | #$A0 ;AD|
00000330: 44 52 45 53 53 00 51 07 14 05 53 54 41 20 41 44 |DRESS.Q...STA AD|
00000340: 44 52 AA 31 20 20 20 20 20 20 3B A4 20 4D 4F 56 |DR.1 ;. MOV|
00000350: 45 00 6C 07 1E 05 4C 44 59 20 23 24 30 30 20 20 |E.l...LDY #$00 |
00000360: 20 20 20 20 20 20 3B 42 41 53 49 43 00 92 07 28 | ;BASIC...(|
00000370: 05 58 46 45 52 20 4C 44 41 20 28 41 44 44 52 29 |.XFER LDA (ADDR)|
00000380: 2C 59 20 3B 4D 4F 56 45 20 42 41 53 49 43 20 52 |,Y ;MOVE BASIC R|
00000390: 4F 4D 00 AD 07 32 05 53 54 41 20 28 41 44 44 52 |OM...2.STA (ADDR|
000003A0: 29 2C 59 20 20 20 20 3B A4 20 52 41 4D 00 B5 07 |),Y ;. RAM...|
000003B0: 3C 05 49 4E 59 00 C2 07 46 05 42 4E 45 20 58 46 |<.INY...F.BNE XF|
000003C0: 45 52 00 E9 07 50 05 49 4E 43 20 41 44 44 52 AA |ER...P.INC ADDR.|
000003D0: 31 20 20 20 20 20 20 3B 42 55 4D 50 20 50 41 47 |1 ;BUMP PAG|
000003E0: 45 20 41 44 44 52 45 53 53 00 09 08 5A 05 4C 44 |E ADDRESS...Z.LD|
000003F0: 41 20 41 44 44 52 AA 31 20 20 20 20 20 20 3B 9A |A ADDR.1 ;.|
00000400: 49 4E 55 45 20 4D 4F 56 45 00 24 08 64 05 43 4D |INUE MOVE.$.d.CM|
00000410: 50 20 23 24 43 30 20 20 20 20 20 20 20 20 3B 20 |P #$C0 ; |
00000420: 55 50 20 A4 00 3F 08 6E 05 42 4D 49 20 58 46 45 |UP ..?.n.BMI XFE|
00000430: 52 20 20 20 20 20 20 20 20 3B 24 42 46 46 46 00 |R ;$BFFF.|
00000440: 6B 08 78 05 4C 44 41 20 23 24 34 43 20 20 20 20 |k.x.LDA #$4C |
00000450: 20 20 20 20 3B 4A 4D 50 20 49 4E 53 54 52 55 43 | ;JMP INSTRUC|
00000460: 54 49 91 20 4F 50 20 43 4F 44 45 00 95 08 82 05 |TI. OP CODE.....|
00000470: 53 54 41 20 50 41 54 43 48 31 20 20 20 20 20 20 |STA PATCH1 |
00000480: 3B 53 A4 52 45 20 54 48 45 20 4A 55 4D 50 53 20 |;S.RE THE JUMPS |
00000490: 81 20 54 48 45 00 B2 08 8C 05 53 54 41 20 50 41 |. THE.....STA PA|
000004A0: 54 43 48 32 20 20 20 20 20 20 3B 50 41 54 43 48 |TCH2 ;PATCH|
000004B0: 45 53 00 DC 08 96 05 4C 44 41 20 23 B3 46 49 58 |ES.....LDA #.FIX|
000004C0: 31 20 20 20 20 20 20 3B 4A 55 4D 50 20 A4 20 46 |1 ;JUMP . F|
000004D0: 49 58 31 20 41 54 20 53 54 41 52 54 00 ED 08 A0 |IX1 AT START....|
000004E0: 05 53 54 41 20 50 41 54 43 48 31 AA 31 00 FC 08 |.STA PATCH1.1...|
000004F0: AA 05 4C 44 41 20 23 B1 46 49 58 31 00 0D 09 B4 |..LDA #.FIX1....|
00000500: 05 53 54 41 20 50 41 54 43 48 31 AA 32 00 33 09 |.STA PATCH1.2.3.|
00000510: BE 05 4C 44 41 20 23 B3 46 49 58 32 20 20 20 20 |..LDA #.FIX2 |
00000520: 20 20 3B 4A 55 4D 50 20 A4 20 46 49 58 32 20 41 | ;JUMP . FIX2 A|
00000530: 54 20 80 00 44 09 C8 05 53 54 41 20 50 41 54 43 |T ..D...STA PATC|
00000540: 48 32 AA 31 00 53 09 D2 05 4C 44 41 20 23 B1 46 |H2.1.S...LDA #.F|
00000550: 49 58 32 00 64 09 DC 05 53 54 41 20 50 41 54 43 |IX2.d...STA PATC|
00000560: 48 32 AA 32 00 7D 09 E6 05 4C 44 41 20 23 24 45 |H2.2.}...LDA #$E|
00000570: 46 20 20 20 20 20 20 20 20 3B 4D 41 50 00 96 09 |F ;MAP...|
00000580: F0 05 53 54 41 20 24 30 30 20 20 20 20 20 20 20 |..STA $00 |
00000590: 20 20 3B 4F 55 54 00 B5 09 FA 05 4C 44 41 20 24 | ;OUT.....LDA $|
000005A0: 30 31 20 20 20 20 20 20 20 20 20 3B 54 48 45 20 |01 ;THE |
000005B0: 42 41 53 49 43 00 CC 09 04 06 AF 20 23 24 46 45 |BASIC...... #$FE|
000005C0: 20 20 20 20 20 20 20 20 3B 52 4F 4D 00 D8 09 0E | ;ROM....|
000005D0: 06 53 54 41 20 24 30 31 00 F8 09 18 06 4C 44 41 |.STA $01.....LDA|
000005E0: 20 23 30 31 20 20 20 20 20 20 20 20 20 3B 49 4E | #01 ;IN|
000005F0: 49 54 49 41 4C 49 5A 45 00 19 0A 22 06 53 54 41 |ITIALIZE...".STA|
00000600: 20 43 4F 4C B0 20 20 20 20 20 20 20 3B 43 4F 4C | COL. ;COL|
00000610: B0 20 A4 20 57 48 49 54 45 00 35 0A 2C 06 52 54 |. . WHITE.5.,.RT|
00000620: 53 20 20 20 20 20 20 20 20 20 20 20 20 20 3B 80 |S ;.|
00000630: 20 49 4E 49 54 00 3B 0A 36 06 3B 00 4C 0A 40 06 | INIT.;.6.;.L.@.|
00000640: 3B 50 41 54 43 48 20 48 AF 4C 45 52 00 52 0A 4A |;PATCH H.LER.R.J|
00000650: 06 3B 00 72 0A 54 06 3B 46 49 58 31 20 B2 20 50 |.;.r.T.;FIX1 . P|
00000660: 41 54 43 48 20 A4 20 53 54 41 52 54 20 4F 46 20 |ATCH . START OF |
00000670: D1 B0 00 78 0A 5E 06 3B 00 9C 0A 68 06 46 49 58 |...x.^.;...h.FIX|
00000680: 31 20 4A 53 52 20 4D 53 CB 4E 20 20 3B 44 49 53 |1 JSR MS.N ;DIS|
00000690: 50 4C 41 59 20 4D 45 53 53 41 47 45 00 C8 0A 72 |PLAY MESSAGE...r|
000006A0: 06 4C 44 58 20 24 33 37 20 20 20 20 20 20 20 20 |.LDX $37 |
000006B0: 20 3B 46 49 4E 49 53 48 20 44 49 53 50 4C 41 43 | ;FINISH DISPLAC|
000006C0: 45 44 20 42 41 53 49 43 00 E2 0A 7C 06 4C 44 41 |ED BASIC...|.LDA|
000006D0: 20 24 33 38 20 20 20 20 20 20 20 20 20 3B 43 4F | $38 ;CO|
000006E0: 44 45 00 01 0B 86 06 4A 4D 50 20 52 45 54 31 20 |DE.....JMP RET1 |
000006F0: 20 20 20 20 20 20 20 3B 8E 20 A4 20 42 41 53 49 | ;. . BASI|
00000700: 43 00 07 0B 90 06 3B 00 23 0B 9A 06 3B 46 49 58 |C.....;.#...;FIX|
00000710: 32 20 B2 20 50 41 54 43 48 20 A4 20 80 20 4F 46 |2 . PATCH . . OF|
00000720: 20 D1 B0 00 29 0B A4 06 3B 00 4D 0B AE 06 46 49 | ...)...;.M...FI|
00000730: 58 32 20 4C 44 41 20 24 34 46 20 20 20 20 3B 46 |X2 LDA $4F ;F|
00000740: 49 4E 49 53 48 20 42 41 53 49 43 27 53 00 67 0B |INISH BASIC'S.g.|
00000750: B8 06 B0 41 20 24 34 45 20 20 20 20 20 20 20 20 |...A $4E |
00000760: 20 3B 53 54 55 46 46 00 84 0B C2 06 42 45 51 20 | ;STUFF.....BEQ |
00000770: 52 45 54 52 4E 20 20 20 20 20 20 20 3B 44 91 45 |RETRN ;D.E|
00000780: 20 D1 49 91 00 A0 0B CC 06 4A 4D 50 20 9A 20 20 | .I......JMP . |
00000790: 20 20 20 20 20 20 3B 9A 49 4E 55 45 20 D1 49 91 | ;.INUE .I.|
000007A0: 00 C5 0B D6 06 52 45 54 52 4E 20 4A 53 52 20 4D |.....RETRN JSR M|
000007B0: 53 CB 46 46 20 3B 50 55 54 20 53 43 52 45 45 4E |S.FF ;PUT SCREEN|
000007C0: 20 42 41 43 4B 00 E1 0B E0 06 4A 4D 50 20 51 55 | BACK.....JMP QU|
000007D0: 49 54 20 20 20 20 20 20 20 20 3B D1 B0 20 44 91 |IT ;.. D.|
000007E0: 45 00 E7 0B EA 06 3B 00 08 0C F4 06 3B 94 20 55 |E.....;.....;. U|
000007F0: 53 45 52 20 53 43 52 45 45 4E 20 AF 20 50 55 54 |SER SCREEN . PUT|
00000800: 20 4D 45 53 53 41 47 45 00 24 0C FE 06 3B 91 20 | MESSAGE.$...;. |
00000810: 53 43 52 45 45 4E 20 42 45 81 45 20 53 54 41 52 |SCREEN BE.E STAR|
00000820: 54 49 4E 47 00 35 0C 08 07 3B 47 41 52 42 41 47 |TING.5...;GARBAG|
00000830: 45 20 D1 B0 2E 00 3B 0C 12 07 3B 00 58 0C 1C 07 |E ....;...;.X...|
00000840: 4D 53 CB 4E 20 50 48 50 20 20 20 20 20 20 20 3B |MS.N PHP ;|
00000850: 94 20 53 54 41 54 55 53 00 71 0C 26 07 54 59 41 |. STATUS.q.&.TYA|
00000860: 20 20 20 20 20 20 20 20 20 20 20 20 20 3B AF 20 | ;. |
00000870: 59 00 8F 0C 30 07 50 48 41 20 20 20 20 20 20 20 |Y...0.PHA |
00000880: 20 20 20 20 20 20 3B 52 45 47 49 53 54 45 52 00 | ;REGISTER.|
00000890: AD 0C 3A 07 4C 44 41 20 23 31 30 20 20 20 20 20 |..:.LDA #10 |
000008A0: 20 20 20 20 3B 53 54 41 52 54 20 41 54 00 CC 0C | ;START AT...|
000008B0: 44 07 53 54 41 20 53 43 52 45 45 4E 20 20 20 20 |D.STA SCREEN |
000008C0: 20 20 3B 31 31 54 48 20 43 48 41 52 00 EA 0C 4E | ;11TH CHAR...N|
000008D0: 07 4C 44 41 20 48 49 42 41 53 45 20 20 20 20 20 |.LDA HIBASE |
000008E0: 20 3B A1 20 53 43 52 45 45 4E 00 09 0D 58 07 53 | ;. SCREEN...X.S|
000008F0: 54 41 20 53 43 52 45 45 4E AA 31 20 20 20 20 3B |TA SCREEN.1 ;|
00000900: 50 41 47 45 20 41 44 44 52 00 2C 0D 62 07 4C 44 |PAGE ADDR.,.b.LD|
00000910: 59 20 23 31 39 20 20 20 20 20 20 20 20 20 3B 32 |Y #19 ;2|
00000920: 30 20 43 48 41 52 41 43 54 45 52 53 00 4D 0D 6C |0 CHARACTERS.M.l|
00000930: 07 4C 44 58 20 43 4F 4C B0 20 20 20 20 20 20 20 |.LDX COL. |
00000940: 3B 4D 45 53 53 41 47 45 20 43 4F 4C B0 00 71 0D |;MESSAGE COL..q.|
00000950: 76 07 4D 4F 56 45 20 4C 44 41 20 28 53 43 52 45 |v.MOVE LDA (SCRE|
00000960: 45 4E 29 2C 59 20 3B 94 20 45 58 49 53 54 49 4E |EN),Y ;. EXISTIN|
00000970: 47 00 92 0D 80 07 53 54 41 20 42 55 46 46 45 52 |G.....STA BUFFER|
00000980: 2C 59 20 20 20 3B 53 43 52 45 45 4E 20 9A 45 4E |,Y ;SCREEN .EN|
00000990: 54 53 00 B0 0D 8A 07 4C 44 41 20 4D 45 53 53 41 |TS.....LDA MESSA|
000009A0: 47 2C 59 20 20 20 3B A1 20 4D 45 53 53 41 47 45 |G,Y ;. MESSAGE|
000009B0: 00 D7 0D 94 07 AF 20 23 24 42 46 20 20 20 20 20 |...... #$BF |
000009C0: 20 20 3B 43 91 56 45 52 54 20 A4 20 53 43 52 45 | ;C.VERT . SCRE|
000009D0: 45 4E 20 43 4F 44 45 00 FB 0D 9E 07 53 54 41 20 |EN CODE.....STA |
000009E0: 28 53 43 52 45 45 4E 29 2C 59 20 3B 44 49 53 50 |(SCREEN),Y ;DISP|
000009F0: 4C 41 59 20 4D 45 53 53 41 47 45 00 1A 0E A8 07 |LAY MESSAGE.....|
00000A00: 4C 44 41 20 43 4D 45 4D 2C 59 20 20 20 20 20 3B |LDA CMEM,Y ;|
00000A10: 94 20 45 58 49 53 54 49 4E 47 00 39 0E B2 07 53 |. EXISTING.9...S|
00000A20: 54 41 20 43 42 55 46 46 2C 59 20 20 20 20 3B 43 |TA CBUFF,Y ;C|
00000A30: 4F 4C B0 20 4D 45 4D B0 59 00 5A 0E BC 07 54 58 |OL. MEM.Y.Z...TX|
00000A40: 41 20 20 20 20 20 20 20 20 20 20 20 20 3B 52 45 |A ;RE|
00000A50: 50 4C 41 43 45 20 57 49 54 48 00 7B 0E C6 07 53 |PLACE WITH.{...S|
00000A60: 54 41 20 43 4D 45 4D 2C 59 20 20 20 20 20 3B 4D |TA CMEM,Y ;M|
00000A70: 45 53 53 41 47 45 20 43 4F 4C B0 00 9A 0E D0 07 |ESSAGE COL......|
00000A80: 44 45 59 20 20 20 20 20 20 20 20 20 20 20 20 3B |DEY ;|
00000A90: 42 55 4D 50 20 49 4E 44 45 58 00 C1 0E DA 07 42 |BUMP INDEX.....B|
00000AA0: 50 4C 20 4D 4F 56 45 20 20 20 20 20 20 20 3B 4D |PL MOVE ;M|
00000AB0: 4F 56 45 20 32 30 20 43 48 41 52 41 43 54 45 52 |OVE 20 CHARACTER|
00000AC0: 53 00 D7 0E E4 07 50 4C 41 20 20 20 20 20 20 20 |S.....PLA |
00000AD0: 20 20 20 20 20 3B 8C 00 F5 0E EE 07 54 41 59 20 | ;......TAY |
00000AE0: 20 20 20 20 20 20 20 20 20 20 20 3B 52 45 47 49 | ;REGI|
00000AF0: 53 54 45 52 53 00 FD 0E F8 07 50 4C 50 00 15 0F |STERS.....PLP...|
00000B00: 02 08 52 54 53 20 20 20 20 20 20 20 20 20 20 20 |..RTS |
00000B10: 20 3B 44 91 45 00 1B 0F 0C 08 3B 00 3D 0F 16 08 | ;D.E.....;.=...|
00000B20: 3B 50 55 54 20 55 53 45 52 27 53 20 53 43 52 45 |;PUT USER'S SCRE|
00000B30: 45 4E 20 9A 45 4E 54 53 20 42 41 43 4B 00 59 0F |EN .ENTS BACK.Y.|
00000B40: 20 08 3B 41 46 54 45 52 20 43 4F 4C 4C 45 43 A4 | .;AFTER COLLEC.|
00000B50: 52 20 49 53 20 44 91 45 2E 00 5F 0F 2A 08 3B 00 |R IS D.E.._.*.;.|
00000B60: 74 0F 34 08 4D 53 CB 46 46 20 50 48 50 20 20 20 |t.4.MS.FF PHP |
00000B70: 20 20 3B 94 00 7C 0F 3E 08 50 48 41 00 9A 0F 48 | ;..|.>.PHA...H|
00000B80: 08 54 59 41 20 20 20 20 20 20 20 20 20 20 20 20 |.TYA |
00000B90: 3B 52 45 47 49 53 54 45 52 53 00 A2 0F 52 08 50 |;REGISTERS...R.P|
00000BA0: 48 41 00 C5 0F 5C 08 4C 44 41 20 23 31 30 20 20 |HA...\.LDA #10 |
00000BB0: 20 20 20 20 20 20 3B 31 31 54 48 20 43 48 41 52 | ;11TH CHAR|
00000BC0: 41 43 54 45 52 00 E2 0F 66 08 53 54 41 20 53 43 |ACTER...f.STA SC|
00000BD0: 52 45 45 4E 20 20 20 20 20 3B 91 20 53 43 52 45 |REEN ;. SCRE|
00000BE0: 45 4E 00 02 10 70 08 4C 44 41 20 48 49 42 41 53 |EN...p.LDA HIBAS|
00000BF0: 45 20 20 20 20 20 3B 53 43 52 45 45 4E 20 50 41 |E ;SCREEN PA|
00000C00: 47 45 00 1E 10 7A 08 53 54 41 20 53 43 52 45 45 |GE...z.STA SCREE|
00000C10: 4E AA 31 20 20 20 3B 41 44 44 52 45 53 53 00 40 |N.1 ;ADDRESS.@|
00000C20: 10 84 08 4C 44 59 20 23 31 39 20 20 20 20 20 20 |...LDY #19 |
00000C30: 20 20 3B 32 30 20 43 48 41 52 41 43 54 45 52 53 | ;20 CHARACTERS|
00000C40: 00 61 10 8E 08 52 45 53 A4 52 20 4C 44 41 20 42 |.a...RES.R LDA B|
00000C50: 55 46 46 45 52 2C 59 20 3B 50 55 54 20 54 45 58 |UFFER,Y ;PUT TEX|
00000C60: 54 00 7A 10 98 08 53 54 41 20 28 53 43 52 45 45 |T.z...STA (SCREE|
00000C70: 4E 29 2C 59 20 3B 42 41 43 4B 00 90 10 A2 08 4C |N),Y ;BACK.....L|
00000C80: 44 41 20 43 42 55 46 46 2C 59 20 20 20 20 3B 8C |DA CBUFF,Y ;.|
00000C90: 00 AA 10 AC 08 53 54 41 20 43 4D 45 4D 2C 59 20 |.....STA CMEM,Y |
00000CA0: 20 20 20 20 3B 43 4F 4C B0 53 00 C9 10 B6 08 44 | ;COL.S.....D|
00000CB0: 45 59 20 20 20 20 20 20 20 20 20 20 20 20 3B 42 |EY ;B|
00000CC0: 55 4D 50 20 49 4E 44 45 58 00 EC 10 C0 08 42 50 |UMP INDEX.....BP|
00000CD0: 4C 20 52 45 53 A4 52 20 20 20 20 20 3B 8C 20 32 |L RES.R ;. 2|
00000CE0: 30 20 43 48 41 52 41 43 54 45 52 53 00 02 11 CA |0 CHARACTERS....|
00000CF0: 08 50 4C 41 20 20 20 20 20 20 20 20 20 20 20 20 |.PLA |
00000D00: 3B 8C 00 0A 11 D4 08 54 41 59 00 28 11 DE 08 50 |;......TAY.(...P|
00000D10: 4C 41 20 20 20 20 20 20 20 20 20 20 20 20 3B 52 |LA ;R|
00000D20: 45 47 49 53 54 45 52 53 00 30 11 E8 08 50 4C 50 |EGISTERS.0...PLP|
00000D30: 00 48 11 F2 08 52 54 53 20 20 20 20 20 20 20 20 |.H...RTS |
00000D40: 20 20 20 20 3B 44 91 45 00 4E 11 FC 08 3B 00 73 | ;D.E.N...;.s|
00000D50: 11 06 09 4D 45 53 53 41 47 20 2E C6 20 22 20 3E |...MESSAG .. " >|
00000D60: 57 41 49 54 2C 53 59 53 54 45 4D 20 42 55 53 59 |WAIT,SYSTEM BUSY|
00000D70: 3C 20 22 00 79 11 10 09 3B 00 9C 11 1A 09 3B 83 |< ".y...;.....;.|
00000D80: 20 53 54 4F 52 41 47 45 20 2D 20 34 30 20 42 59 | STORAGE - 40 BY|
00000D90: 54 45 53 20 41 54 20 24 30 32 41 37 00 A2 11 24 |TES AT $02A7...$|
00000DA0: 09 3B 00 AE 11 2E 09 AC B2 24 30 32 41 37 00 B4 |.;.......$02A7..|
00000DB0: 11 38 09 3B 00 C6 11 42 09 42 55 46 46 45 52 20 |.8.;...B.BUFFER |
00000DC0: AC B2 AC AA 32 30 00 D7 11 4C 09 43 42 55 46 46 |....20...L.CBUFF|
00000DD0: 20 AC B2 AC AA 32 30 00 DD 11 56 09 3B 00 E4 11 | ....20...V.;...|
00000DE0: 60 09 2E 80 00 00 00 |`...... |
..).... --- GARBAGE COLLECTOR MESSAGE --
-.Q.... ----- BY MICHAEL T. GRAHAM -----
-.Q.... OPEN8,8,8,"0:GARBMSG,P,W".Z....7
00.....;.OPT O8.....;PAL ASSEMBLER SOURC
E CODE...$.;.Q...;THIS BASIC PATCH PUTS
A MESSAGE...8.;. SCREEN WHEN BASIC'S GAR
BAGE...B.;COLLEC.R .S. BASIC IS MOVED ..
2.L.;RAM AT INITIALIZATI...8.V.;.C.`.HIB
ASE .$0288 ;KERNAL SCREEN PAGE ADDR...J.
ADDR .$FB ;MOVE VEC.R...T.PATCH1 .$B
526 ;PATCH START OF Q..G.~.PATCH2 .$B606
;PATCH . OF Q......RET1 .$B52A ;.INUE
START...... .$B60C ;Q. . D.E.....QUIT
.$B601 ;. QI..>...COL. .$02 ;MESSA
GE COL. S.RAGE.B...CMEM .$D80A ;COL. M
EM.Y START.....SCREEN .$FD ;SCREEN VEC
.R S.RAGE...D.;...N...$033C ;CASSETTE BU
FFER...X.;.X...;INITIALIZE MESSAGE PATCH
(. 828).....;.....INIT LDA #$00 ;SET
UP.....STA ADDR ;INDIRECT.5...LDA
#$A0 ;ADDRESS.Q...STA ADDR.1
;. MOVE.L...LDY #$00 ;BASIC...(
.XFER LDA (ADDR),Y ;MOVE BASIC ROM...2.S
TA (ADDR),Y ;. RAM...<.INY.B.F.BNE XF
ER...P.INC ADDR.1 ;BUMP PAGE ADDRES
S...Z.LDA ADDR.1 ;.INUE MOVE.$.D.CM
P #$C0 ; UP ..?.N.BMI XFER
;$BFFF.K.X.LDA #$4C ;JMP INSTRUC
TI. OP CODE.....STA PATCH1 ;S.RE TH
E JUMPS . THE.....STA PATCH2 ;PATCH
ES.....LDA #.FIX1 ;JUMP . FIX1 AT S
TART... .STA PATCH1.1.....LDA #.FIX1....
.STA PATCH1.2.3...LDA #.FIX2 ;JUMP
. FIX2 AT ..D.H.STA PATCH2.1.S.R.LDA #.F
IX2.D...STA PATCH2.2.}...LDA #$EF
;MAP.....STA $00 ;OUT.....LDA $
01 ;THE BASIC.L.... #$FE
;ROM.X...STA $01.....LDA #01 ;IN
ITIALIZE...".STA COL. ;COL. . WHIT
E.5.,.RTS ;. INIT.;.6.;.L.@.
;PATCH H.LER.R.J.;.R.T.;FIX1 . PATCH . S
TART OF Q..X.^.;...H.FIX1 JSR MSKN ;DIS
PLAY MESSAGE.H.R.LDX $37 ;FINISH
DISPLACED BASIC...|.LDA $38 ;CO
DE.....JMP RET1 ;. . BASIC.....;.
#...;FIX2 . PATCH . . OF Q..)...;.M...FI
X2 LDA $4F ;FINISH BASIC'S.G....A $4E
;STUFF...B.BEQ RETRN ;D.E
QI.. .L.JMP . ;.INUE QI..E.V.RET
RN JSR MSKFF ;PUT SCREEN BACK.....JMP QU
IT ;Q. D.E.....;.....;. USER SCRE
EN . PUT MESSAGE.$...;. SCREEN BE.E STAR
TING.5...;GARBAGE Q...;...;.X...MSKN PHP
;. STATUS.Q.&.TYA ;.
Y...0.PHA ;REGISTER...:.LDA
#10 ;START AT.L.D.STA SCREEN
;11TH CHAR...N.LDA HIBASE ;. SCRE
EN...X.STA SCREEN.1 ;PAGE ADDR.,.B.LD
Y #19 ;20 CHARACTERS.M.L.LDX COL
. ;MESSAGE COL..Q.V.MOVE LDA (SCRE
EN),Y ;. EXISTING.....STA BUFFER,Y ;SC
REEN .ENTS.....LDA MESSAG,Y ;. MESSAGE
.W.... #$BF ;C.VERT . SCREEN CODE.
....STA (SCREEN),Y ;DISPLAY MESSAGE.....
LDA CMEM,Y ;. EXISTING.9...STA CBUFF
,Y ;COL. MEM.Y.Z...TXA ;RE
PLACE WITH.{.F.STA CMEM,Y ;MESSAGE C
OL....P.DEY ;BUMP INDEX.A.Z.B
PL MOVE ;MOVE 20 CHARACTERS.W...PL
A ;......TAY ;REGI
STERS.....PLP.....RTS ;D.E...
..;.=...;PUT USER'S SCREEN .ENTS BACK.Y.
.;AFTER COLLEC.R IS D.E.._.*.;.T.4.MSKF
F PHP ;..|.>.PHA...H.TYA
;REGISTERS...R.PHA.E.\.LDA #10 ;1
1TH CHARACTER...F.STA SCREEN ;. SCRE
EN...P.LDA HIBASE ;SCREEN PAGE...Z.S
TA SCREEN.1 ;ADDRESS.@...LDY #19
;20 CHARACTERS.A...RES.R LDA BUFFER,Y
;PUT TEXT.Z...STA (SCREEN),Y ;BACK.....L
DA CBUFF,Y ;......STA CMEM,Y ;COL
.S.I...DEY ;BUMP INDEX.....BP
L RES.R ;. 20 CHARACTERS...J.PLA
;....T.TAY.(...PLA ;R
EGISTERS.0...PLP.H...RTS ;D.E
.N...;.S...MESSAG .F " >WAIT,SYSTEM BUSY
< ".Y...;.....;. STORAGE - 40 BYTES AT $
02A7...$.;.......$02A7...8.;.F.B.BUFFER
....20.W.L.CBUFF ....20...V.;...`......
×
C64 Image
> CLICK IMAGE PREVIEW FOR FULL MODAL