TECHMAN FIXES
FILE INFORMATION
FILENAME(S): TECHMAN FIXES
FILE TYPE(S): SEQ
FILE SIZE: 9.4K
FIRST SEEN: 2025-10-20 14:31:28
APPEARS ON: 2 disk(s)
FILE HASH
a172b414f6cd10579ab017067d9f024d966207b5502da3de55ba3f047cf99afa
FOUND ON DISKS (2 DISKS)
| DISK TITLE | FILENAME | FILE TYPE | COLLECTION | TRACK | SECTOR | ACTIONS |
|---|---|---|---|---|---|---|
| G PD 5 | TECHMAN FIXES | SEQ | Treasure Chest - Klaus Der Suhler | 20 | 1 | DOWNLOAD FILE |
| G T 22 0 | TECHMAN FIXES | SEQ | Treasure Chest - Klaus Der Suhler | 10 | 17 | DOWNLOAD FILE |
FILE CONTENT & ANALYSIS
00000000: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000010: 20 20 20 20 20 20 20 20 20 0D 0D 0D 0D 20 20 20 | .... | 00000020: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000030: C7 C5 CF D3 20 C3 CF CE D6 C5 D2 D4 20 D5 D4 C9 |.... ....... ...| 00000040: CC C9 D4 D9 20 C6 C9 CC C5 20 D3 D4 D2 D5 C3 D4 |.... .... ......| 00000050: D5 D2 C5 0D 0D D4 48 45 20 C7 C5 CF D3 20 43 4F |......HE .... CO| 00000060: 4E 56 45 52 54 20 50 52 4F 47 52 41 4D 20 49 53 |NVERT PROGRAM IS| 00000070: 20 55 53 45 44 20 54 4F 20 43 4F 4E 56 45 52 54 | USED TO CONVERT| 00000080: 20 C7 C5 CF D3 20 D6 CC C9 D2 20 41 4E 44 20 D3 | .... .... AND .| 00000090: C5 D1 20 53 54 52 55 43 54 55 52 45 20 46 49 4C |.. STRUCTURE FIL| 000000A0: 45 53 20 54 4F 20 C3 4F 4D 4D 4F 44 4F 52 45 20 |ES TO .OMMODORE | 000000B0: D3 C5 D1 20 53 54 52 55 43 54 55 52 45 20 46 49 |... STRUCTURE FI| 000000C0: 4C 45 53 2E 20 D7 49 54 48 49 4E 20 54 48 45 20 |LES. .ITHIN THE | 000000D0: C3 4F 4D 4D 4F 44 4F 52 45 20 D3 C5 D1 20 46 49 |.OMMODORE ... FI| 000000E0: 4C 45 20 57 48 49 43 48 20 49 53 20 43 52 45 41 |LE WHICH IS CREA| 000000F0: 54 45 44 2C 20 41 4C 4C 20 4F 46 20 54 48 45 20 |TED, ALL OF THE | 00000100: C7 C5 CF D3 2D 52 45 4C 41 54 45 44 20 49 4E 46 |....-RELATED INF| 00000110: 4F 52 4D 41 54 49 4F 4E 20 41 42 4F 55 54 20 54 |ORMATION ABOUT T| 00000120: 48 45 20 46 49 4C 45 20 49 53 20 43 4F 4E 54 41 |HE FILE IS CONTA| 00000130: 49 4E 45 44 2E 20 D4 48 49 53 20 49 4E 43 4C 55 |INED. .HIS INCLU| 00000140: 44 45 53 20 54 48 45 20 46 49 4C 45 27 53 3A 0D |DES THE FILE'S:.| 00000150: 0D 0D 20 2D 20 44 49 52 45 43 54 4F 52 59 20 45 |.. - DIRECTORY E| 00000160: 4E 54 52 59 0D 20 2D 20 48 45 41 44 45 52 20 42 |NTRY. - HEADER B| 00000170: 4C 4F 43 4B 0D 20 2D 20 49 4E 44 45 58 20 54 41 |LOCK. - INDEX TA| 00000180: 42 4C 45 20 28 49 46 20 46 49 4C 45 20 49 53 20 |BLE (IF FILE IS | 00000190: D6 CC C9 D2 29 0D 20 2D 20 44 41 54 41 20 42 4C |....). - DATA BL| 000001A0: 4F 43 4B 53 0D 0D C3 4F 4E 56 45 52 54 20 41 4C |OCKS...ONVERT AL| 000001B0: 53 4F 20 57 49 4C 4C 20 43 4F 4E 56 45 52 54 20 |SO WILL CONVERT | 000001C0: 54 48 45 53 45 20 22 C7 C5 CF D3 20 46 4F 52 4D |THESE ".... FORM| 000001D0: 41 54 20 49 4E 20 C3 4F 4D 4D 4F 44 4F 52 45 20 |AT IN .OMMODORE | 000001E0: D3 C5 D1 22 20 46 49 4C 45 53 20 42 41 43 4B 20 |..." FILES BACK | 000001F0: 54 4F 20 54 48 45 49 52 20 4F 52 49 47 49 4E 41 |TO THEIR ORIGINA| 00000200: 4C 20 46 4F 52 4D 2E 0D 0D D7 48 45 54 48 45 52 |L FORM....HETHER| 00000210: 20 C3 4F 4E 56 45 52 54 20 49 53 20 50 52 4F 43 | .ONVERT IS PROC| 00000220: 45 53 53 49 4E 47 20 41 20 C7 C5 CF D3 20 D6 CC |ESSING A .... ..| 00000230: C9 D2 20 4F 52 20 D3 C5 D1 20 46 49 4C 45 2C 20 |.. OR ... FILE, | 00000240: 54 48 45 20 46 49 52 53 54 20 54 57 4F 20 42 4C |THE FIRST TWO BL| 00000250: 4F 43 4B 53 20 4F 46 20 54 48 45 20 52 45 53 55 |OCKS OF THE RESU| 00000260: 4C 54 49 4E 47 20 C3 4F 4D 4D 4F 44 4F 52 45 20 |LTING .OMMODORE | 00000270: D3 C5 D1 20 46 49 4C 45 20 43 4F 4E 54 41 49 4E |... FILE CONTAIN| 00000280: 20 54 48 45 20 53 41 4D 45 20 49 4E 46 4F 52 4D | THE SAME INFORM| 00000290: 41 54 49 4F 4E 3A 0D 0D 42 4C 4F 43 4B 20 31 3A |ATION:..BLOCK 1:| 000002A0: 20 42 59 54 45 53 20 30 20 41 4E 44 20 31 20 43 | BYTES 0 AND 1 C| 000002B0: 4F 4E 54 41 49 4E 20 53 54 41 4E 44 41 52 44 0D |ONTAIN STANDARD.| 000002C0: 20 20 20 20 20 20 20 20 20 4E 45 58 54 20 54 52 | NEXT TR| 000002D0: 41 43 4B 20 41 4E 44 20 53 45 43 54 4F 52 20 50 |ACK AND SECTOR P| 000002E0: 4F 49 4E 54 45 52 53 0D 20 20 20 20 20 20 20 20 |OINTERS. | 000002F0: 20 28 CE D4 D3 29 0D 20 20 20 20 20 20 20 20 20 | (...). | 00000300: 42 59 54 45 53 20 32 20 54 4F 20 33 31 20 43 4F |BYTES 2 TO 31 CO| 00000310: 4E 54 41 49 4E 20 54 48 45 0D 20 20 20 20 20 20 |NTAIN THE. | 00000320: 20 20 20 46 49 4C 45 27 53 20 44 49 52 45 43 54 | FILE'S DIRECT| 00000330: 4F 52 59 20 45 4E 54 52 59 2C 20 57 49 54 48 0D |ORY ENTRY, WITH.| 00000340: 20 20 20 20 20 20 20 20 20 54 48 45 20 46 49 4C | THE FIL| 00000350: 45 27 53 20 4F 52 49 47 49 4E 41 4C 20 4E 41 4D |E'S ORIGINAL NAM| 00000360: 45 20 41 4E 44 0D 20 20 20 20 20 20 20 20 20 54 |E AND. T| 00000370: 49 4D 45 20 53 54 41 4D 50 2E 0D 0D 42 4C 4F 43 |IME STAMP...BLOC| 00000380: 4B 20 32 3A 20 42 59 54 45 53 20 30 20 41 4E 44 |K 2: BYTES 0 AND| 00000390: 20 31 3A 20 CE D4 D3 20 50 4F 49 4E 54 45 52 0D | 1: ... POINTER.| 000003A0: 20 20 20 20 20 20 20 20 20 42 59 54 45 53 20 32 | BYTES 2| 000003B0: 20 54 4F 20 32 35 35 3A 20 42 59 54 45 53 20 32 | TO 255: BYTES 2| 000003C0: 20 54 4F 20 32 35 35 0D 20 20 20 20 20 20 20 20 | TO 255. | 000003D0: 20 4F 46 20 54 48 45 20 46 49 4C 45 27 53 20 48 | OF THE FILE'S H| 000003E0: 45 41 44 45 52 20 42 4C 4F 43 4B 2E 0D 0D D7 48 |EADER BLOCK....H| 000003F0: 45 4E 20 43 4F 4E 56 45 52 54 49 4E 47 20 C7 C5 |EN CONVERTING ..| 00000400: CF D3 20 D3 C5 D1 20 46 49 4C 45 53 2C 20 54 48 |.. ... FILES, TH| 00000410: 45 20 52 45 53 54 20 4F 46 20 54 48 45 20 42 4C |E REST OF THE BL| 00000420: 4F 43 4B 53 20 49 4E 20 54 48 45 20 52 45 53 55 |OCKS IN THE RESU| 00000430: 4C 54 49 4E 47 20 C3 4F 4D 4D 4F 44 4F 52 45 20 |LTING .OMMODORE | 00000440: D3 C5 D1 20 46 49 4C 45 20 41 52 45 20 54 48 45 |... FILE ARE THE| 00000450: 20 44 41 54 41 20 42 4C 4F 43 4B 53 20 46 52 4F | DATA BLOCKS FRO| 00000460: 4D 20 54 48 45 20 C7 C5 CF D3 20 D3 C5 D1 20 46 |M THE .... ... F| 00000470: 49 4C 45 2E 0D 0D 42 4C 4F 43 4B 53 20 33 2C 20 |ILE...BLOCKS 3, | 00000480: 34 20 45 54 43 3A 0D 20 20 20 20 20 20 20 20 20 |4 ETC:. | 00000490: 42 59 54 45 53 20 30 20 41 4E 44 20 31 3A 20 CE |BYTES 0 AND 1: .| 000004A0: D4 D3 20 50 4F 49 4E 54 45 52 0D 20 20 20 20 20 |.. POINTER. | 000004B0: 20 20 20 20 42 59 54 45 53 20 32 20 54 4F 20 32 | BYTES 2 TO 2| 000004C0: 35 35 3A 20 42 59 54 45 53 20 32 20 54 4F 20 32 |55: BYTES 2 TO 2| 000004D0: 35 35 0D 20 20 20 20 20 20 20 20 20 4F 46 20 42 |55. OF B| 000004E0: 4C 4F 43 4B 20 46 52 4F 4D 20 4F 52 49 47 49 4E |LOCK FROM ORIGIN| 000004F0: 41 4C 20 C7 C5 CF D3 0D 20 20 20 20 20 20 20 20 |AL ..... | 00000500: 20 D3 C5 D1 20 46 49 4C 45 2E 0D 0D 4C 41 53 54 | ... FILE...LAST| 00000510: 20 42 4C 4F 43 4B 3A 0D 20 20 20 20 20 20 20 20 | BLOCK:. | 00000520: 20 42 59 54 45 20 30 20 3D 20 30 0D 20 20 20 20 | BYTE 0 = 0. | 00000530: 20 20 20 20 20 42 59 54 45 20 31 20 3D 20 50 4F | BYTE 1 = PO| 00000540: 49 4E 54 45 52 20 54 4F 20 4C 41 53 54 20 42 59 |INTER TO LAST BY| 00000550: 54 45 0D 20 20 20 20 20 20 20 20 20 20 55 53 45 |TE. USE| 00000560: 44 20 49 4E 20 54 48 49 53 20 42 4C 4F 43 4B 20 |D IN THIS BLOCK | 00000570: 28 3D 24 30 32 20 54 4F 0D 20 20 20 20 20 20 20 |(=$02 TO. | 00000580: 20 20 20 24 46 46 29 0D 0D D7 48 45 4E 20 43 4F | $FF)...HEN CO| 00000590: 4E 56 45 52 54 49 4E 47 20 C7 C5 CF D3 20 D6 CC |NVERTING .... ..| 000005A0: C9 D2 20 46 49 4C 45 53 2C 20 54 48 45 20 54 48 |.. FILES, THE TH| 000005B0: 49 52 44 20 42 4C 4F 43 4B 20 49 4E 20 54 48 45 |IRD BLOCK IN THE| 000005C0: 20 52 45 53 55 4C 54 49 4E 47 20 C3 4F 4D 4D 4F | RESULTING .OMMO| 000005D0: 44 4F 52 45 20 D3 C5 D1 20 46 49 4C 45 20 43 4F |DORE ... FILE CO| 000005E0: 4E 54 41 49 4E 53 20 41 4E 20 49 4E 44 45 58 20 |NTAINS AN INDEX | 000005F0: 54 41 42 4C 45 20 46 4F 52 20 54 48 45 20 46 49 |TABLE FOR THE FI| 00000600: 4C 45 3A 0D 0D 42 4C 4F 43 4B 20 33 3A 20 20 42 |LE:..BLOCK 3: B| 00000610: 59 54 45 53 20 30 20 41 4E 44 20 31 3A 20 CE D4 |YTES 0 AND 1: ..| 00000620: D3 20 50 4F 49 4E 54 45 52 0D 20 20 20 20 20 20 |. POINTER. | 00000630: 20 20 20 20 42 59 54 45 20 32 3A 20 4E 55 4D 42 | BYTE 2: NUMB| 00000640: 45 52 20 4F 46 20 42 4C 4F 43 4B 53 20 49 4E 0D |ER OF BLOCKS IN.| 00000650: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000660: 20 20 20 D6 CC C9 D2 20 52 45 43 4F 52 44 20 23 | .... RECORD #| 00000670: 30 0D 20 20 20 20 20 20 20 20 20 20 42 59 54 45 |0. BYTE| 00000680: 20 33 3A 20 4E 55 4D 42 45 52 20 4F 46 20 42 59 | 3: NUMBER OF BY| 00000690: 54 45 53 20 49 4E 0D 20 20 20 20 20 20 20 20 20 |TES IN. | 000006A0: 20 20 20 20 20 20 4C 41 53 54 20 42 4C 4F 43 4B | LAST BLOCK| 000006B0: 20 4F 46 20 52 45 43 4F 52 44 20 23 30 0D 20 20 | OF RECORD #0. | 000006C0: 20 20 20 20 20 20 20 20 42 59 54 45 53 20 34 2C | BYTES 4,| 000006D0: 35 3A 20 23 20 42 4C 4F 43 4B 53 2F 42 59 54 45 |5: # BLOCKS/BYTE| 000006E0: 53 0D 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |S. | 000006F0: 20 20 20 49 4E 20 52 45 43 4F 52 44 20 23 31 0D | IN RECORD #1.| 00000700: 20 20 20 20 20 20 20 20 20 20 2E 2E 2E 41 4E 44 | ...AND| 00000710: 20 53 4F 20 4F 4E 20 55 4E 54 49 4C 3A 0D 20 20 | SO ON UNTIL:. | 00000720: 20 20 20 20 20 20 20 20 42 59 54 45 53 20 32 35 | BYTES 25| 00000730: 34 20 41 4E 44 20 32 35 35 3A 20 4E 55 4D 42 45 |4 AND 255: NUMBE| 00000740: 52 20 4F 46 0D 20 20 20 20 20 20 20 20 20 20 20 |R OF. | 00000750: 20 42 4C 4F 43 4B 53 2F 42 59 54 45 53 20 46 4F | BLOCKS/BYTES FO| 00000760: 52 20 52 45 43 4F 52 44 23 31 32 36 0D C9 46 20 |R RECORD#126..F | 00000770: 4F 4E 45 20 4F 46 20 54 48 45 20 42 4C 4F 43 4B |ONE OF THE BLOCK| 00000780: 2F 42 59 54 45 20 50 41 49 52 53 20 49 53 20 28 |/BYTE PAIRS IS (| 00000790: 30 2C 30 29 2C 20 54 48 45 4E 20 54 48 45 20 52 |0,0), THEN THE R| 000007A0: 45 43 4F 52 44 20 44 4F 45 53 20 4E 4F 54 20 45 |ECORD DOES NOT E| 000007B0: 58 49 53 54 2E 20 C9 46 20 41 20 50 41 49 52 20 |XIST. .F A PAIR | 000007C0: 49 53 20 28 24 30 30 2C 24 46 46 29 20 54 48 45 |IS ($00,$FF) THE| 000007D0: 4E 20 54 48 45 20 52 45 43 4F 52 44 20 49 53 20 |N THE RECORD IS | 000007E0: 45 4D 50 54 59 2E 20 D4 48 45 20 52 45 4D 41 49 |EMPTY. .HE REMAI| 000007F0: 4E 49 4E 47 20 42 4C 4F 43 4B 53 20 49 4E 20 54 |NING BLOCKS IN T| 00000800: 48 45 20 C3 4F 4D 4D 4F 44 4F 52 45 20 D3 C5 D1 |HE .OMMODORE ...| 00000810: 20 46 49 4C 45 20 43 4F 4E 54 41 49 4E 20 41 4C | FILE CONTAIN AL| 00000820: 4C 20 4F 46 20 54 48 45 20 D6 CC C9 D2 20 52 45 |L OF THE .... RE| 00000830: 43 4F 52 44 53 2C 20 41 50 50 45 4E 44 45 44 20 |CORDS, APPENDED | 00000840: 45 4E 44 2D 54 4F 2D 45 4E 44 2C 20 53 54 41 52 |END-TO-END, STAR| 00000850: 54 49 4E 47 20 57 49 54 48 20 54 48 45 20 46 49 |TING WITH THE FI| 00000860: 52 53 54 20 45 58 49 53 54 49 4E 47 20 52 45 43 |RST EXISTING REC| 00000870: 4F 52 44 20 28 55 53 55 41 4C 4C 59 20 52 45 43 |ORD (USUALLY REC| 00000880: 4F 52 44 20 23 30 29 2E 20 C1 44 44 49 4E 47 20 |ORD #0). .DDING | 00000890: 55 50 20 41 4C 4C 20 4F 46 20 54 48 45 20 22 4E |UP ALL OF THE "N| 000008A0: 55 4D 42 45 52 20 4F 46 20 42 4C 4F 43 4B 53 22 |UMBER OF BLOCKS"| 000008B0: 20 45 4E 54 52 49 45 53 20 49 4E 20 54 48 45 20 | ENTRIES IN THE | 000008C0: 54 48 49 52 44 20 42 4C 4F 43 4B 20 57 49 4C 4C |THIRD BLOCK WILL| 000008D0: 20 47 49 56 45 20 59 4F 55 20 54 48 45 20 54 4F | GIVE YOU THE TO| 000008E0: 54 41 4C 20 4E 55 4D 42 45 52 20 4F 46 20 42 4C |TAL NUMBER OF BL| 000008F0: 4F 43 4B 20 57 48 49 43 48 20 52 45 4D 41 49 4E |OCK WHICH REMAIN| 00000900: 2E 0D 0D D4 48 55 53 20 49 46 20 54 48 45 20 D6 |....HUS IF THE .| 00000910: CC C9 D2 20 46 49 4C 45 20 48 41 53 20 54 57 4F |... FILE HAS TWO| 00000920: 20 42 4C 4F 43 4B 53 20 49 4E 20 52 45 43 4F 52 | BLOCKS IN RECOR| 00000930: 44 20 23 30 2C 20 4F 4E 45 20 42 4C 4F 43 4B 20 |D #0, ONE BLOCK | 00000940: 49 4E 20 52 45 43 4F 52 44 20 23 34 2C 20 41 4E |IN RECORD #4, AN| 00000950: 44 20 4E 55 4C 4C 20 50 4F 49 4E 54 45 52 53 20 |D NULL POINTERS | 00000960: 28 4E 4F 20 42 4C 4F 43 4B 53 29 20 46 4F 52 20 |(NO BLOCKS) FOR | 00000970: 41 4C 4C 20 4F 54 48 45 52 20 52 45 43 4F 52 44 |ALL OTHER RECORD| 00000980: 53 2C 20 54 48 45 4E 20 54 48 45 20 52 45 53 55 |S, THEN THE RESU| 00000990: 4C 54 49 4E 47 20 C3 4F 4D 4D 4F 44 4F 52 45 20 |LTING .OMMODORE | 000009A0: D3 C5 D1 20 46 49 4C 45 20 57 49 4C 4C 20 43 4F |... FILE WILL CO| 000009B0: 4E 54 41 49 4E 3A 20 0D 0D C2 4C 4F 43 4B 20 31 |NTAIN: ...LOCK 1| 000009C0: 3A 20 20 44 49 52 45 43 54 4F 52 59 20 45 4E 54 |: DIRECTORY ENT| 000009D0: 52 59 20 0D C2 4C 4F 43 4B 20 32 3A 20 20 46 49 |RY ..LOCK 2: FI| 000009E0: 4C 45 20 48 45 41 44 45 52 20 0D C2 4C 4F 43 4B |LE HEADER ..LOCK| 000009F0: 20 33 3A 20 20 42 4C 4F 43 4B 53 2F 42 59 54 45 | 3: BLOCKS/BYTE| 00000A00: 53 20 50 45 52 20 52 45 43 4F 52 44 20 0D 20 20 |S PER RECORD . | 00000A10: 20 20 20 20 20 20 20 20 54 41 42 4C 45 20 0D C2 | TABLE ..| 00000A20: 4C 4F 43 4B 20 34 3A 20 20 42 4C 4F 43 4B 20 23 |LOCK 4: BLOCK #| 00000A30: 31 20 4F 46 20 52 45 43 4F 52 44 20 23 30 20 0D |1 OF RECORD #0 .| 00000A40: C2 4C 4F 43 4B 20 35 3A 20 20 42 4C 4F 43 4B 20 |.LOCK 5: BLOCK | 00000A50: 23 32 20 4F 46 20 52 45 43 4F 52 44 20 23 30 20 |#2 OF RECORD #0 | 00000A60: 0D C2 4C 4F 43 4B 20 36 3A 20 20 42 4C 4F 43 4B |..LOCK 6: BLOCK| 00000A70: 20 23 31 20 4F 46 20 52 45 43 4F 52 44 20 23 34 | #1 OF RECORD #4| 00000A80: 0D 0D CE 4F 54 45 20 54 48 41 54 20 54 48 45 20 |...OTE THAT THE | 00000A90: 43 4F 4E 56 45 52 53 49 4F 4E 20 50 52 4F 43 45 |CONVERSION PROCE| 00000AA0: 53 53 20 44 4F 45 53 20 4E 4F 54 20 43 52 45 41 |SS DOES NOT CREA| 00000AB0: 54 45 20 41 20 4E 45 57 20 46 49 4C 45 2C 20 49 |TE A NEW FILE, I| 00000AC0: 54 20 53 49 4D 50 4C 59 20 4D 4F 44 49 46 49 45 |T SIMPLY MODIFIE| 00000AD0: 53 20 54 48 45 20 45 58 49 53 54 49 4E 47 20 C7 |S THE EXISTING .| 00000AE0: C5 CF D3 20 D6 CC C9 D2 20 4F 52 20 D3 C5 D1 20 |... .... OR ... | 00000AF0: 46 49 4C 45 20 53 4F 20 54 48 41 54 20 49 54 20 |FILE SO THAT IT | 00000B00: 43 4F 4E 46 4F 52 4D 53 20 54 4F 20 54 48 45 20 |CONFORMS TO THE | 00000B10: 46 4F 52 4D 41 54 20 4F 46 20 41 20 C3 4F 4D 4D |FORMAT OF A .OMM| 00000B20: 4F 44 4F 52 45 20 D3 C5 D1 20 46 49 4C 45 2E 20 |ODORE ... FILE. | 00000B30: D5 53 49 4E 47 20 41 20 C7 C5 CF D3 20 D6 CC C9 |.SING A .... ...| 00000B40: D2 20 46 49 4C 45 20 41 53 20 41 4E 20 45 58 41 |. FILE AS AN EXA| 00000B50: 4D 50 4C 45 2C 20 54 48 49 53 20 50 52 4F 43 45 |MPLE, THIS PROCE| 00000B60: 53 53 20 49 4E 56 4F 4C 56 45 53 3A 0D 0D 31 29 |SS INVOLVES:..1)| 00000B70: 20 C3 52 45 41 54 49 4E 47 20 41 20 4E 45 57 20 | .REATING A NEW | 00000B80: 42 4C 4F 43 4B 20 54 4F 20 43 4F 4E 54 41 49 4E |BLOCK TO CONTAIN| 00000B90: 20 54 48 45 20 46 49 4C 45 27 53 20 44 49 52 45 | THE FILE'S DIRE| 00000BA0: 43 54 4F 52 59 20 45 4E 54 52 59 2C 20 43 48 41 |CTORY ENTRY, CHA| 00000BB0: 4E 47 49 4E 47 20 54 48 45 20 45 58 49 53 54 49 |NGING THE EXISTI| 00000BC0: 4E 47 20 44 49 52 45 43 54 4F 52 59 20 45 4E 54 |NG DIRECTORY ENT| 00000BD0: 52 59 20 53 4F 20 54 48 41 54 20 54 48 45 20 50 |RY SO THAT THE P| 00000BE0: 4F 49 4E 54 45 52 20 54 4F 20 54 48 45 20 46 49 |OINTER TO THE FI| 00000BF0: 4C 45 27 53 20 46 49 52 53 54 20 42 4C 4F 43 4B |LE'S FIRST BLOCK| 00000C00: 20 4E 4F 57 20 50 4F 49 4E 54 53 20 54 4F 20 54 | NOW POINTS TO T| 00000C10: 48 49 53 20 4E 45 57 20 42 4C 4F 43 4B 2E 20 D4 |HIS NEW BLOCK. .| 00000C20: 48 45 20 CE D4 D3 20 50 4F 49 4E 54 45 52 20 49 |HE ... POINTER I| 00000C30: 4E 20 54 48 49 53 20 4E 45 57 20 42 4C 4F 43 4B |N THIS NEW BLOCK| 00000C40: 20 57 49 4C 4C 20 50 4F 49 4E 54 20 54 4F 20 54 | WILL POINT TO T| 00000C50: 48 45 20 46 49 4C 45 27 53 20 45 58 49 53 54 49 |HE FILE'S EXISTI| 00000C60: 4E 47 20 48 45 41 44 45 52 20 42 4C 4F 43 4B 2E |NG HEADER BLOCK.| 00000C70: 0D 0D 32 29 20 C3 48 41 4E 47 49 4E 47 20 54 48 |..2) .HANGING TH| 00000C80: 45 20 CE D4 D3 20 50 4F 49 4E 54 45 52 20 49 4E |E ... POINTER IN| 00000C90: 20 54 48 45 20 42 4C 4F 43 4B 20 43 4F 4E 54 41 | THE BLOCK CONTA| 00000CA0: 49 4E 49 4E 47 20 54 48 45 20 46 49 4C 45 20 48 |INING THE FILE H| 00000CB0: 45 41 44 45 52 20 53 4F 20 54 48 41 54 20 49 54 |EADER SO THAT IT| 00000CC0: 20 50 4F 49 4E 54 53 20 54 4F 20 54 48 45 20 46 | POINTS TO THE F| 00000CD0: 49 4C 45 27 53 20 49 4E 44 45 58 20 54 41 42 4C |ILE'S INDEX TABL| 00000CE0: 45 20 42 4C 4F 43 4B 2E 0D 0D 33 29 20 C3 48 41 |E BLOCK...3) .HA| 00000CF0: 4E 47 49 4E 47 20 54 48 45 20 46 49 4C 45 27 53 |NGING THE FILE'S| 00000D00: 20 49 4E 44 45 58 20 54 41 42 4C 45 20 42 4C 4F | INDEX TABLE BLO| 00000D10: 43 4B 20 53 4F 20 54 48 41 54 20 49 54 20 48 41 |CK SO THAT IT HA| 00000D20: 53 20 41 43 43 55 52 41 54 45 20 22 4E 55 4D 42 |S ACCURATE "NUMB| 00000D30: 45 52 20 4F 46 20 42 4C 4F 43 4B 53 2F 42 59 54 |ER OF BLOCKS/BYT| 00000D40: 45 53 22 20 49 4E 46 4F 52 4D 41 54 49 4F 4E 20 |ES" INFORMATION | 00000D50: 46 4F 52 20 45 41 43 48 20 52 45 43 4F 52 44 2E |FOR EACH RECORD.| 00000D60: 20 C1 4C 53 4F 2C 20 54 48 45 20 CE D4 D3 20 50 | .LSO, THE ... P| 00000D70: 4F 49 4E 54 45 52 20 49 4E 20 54 48 49 53 20 42 |OINTER IN THIS B| 00000D80: 4C 4F 43 4B 20 49 53 20 41 4C 54 45 52 45 44 20 |LOCK IS ALTERED | 00000D90: 54 4F 20 50 4F 49 4E 54 20 54 4F 20 54 48 45 20 |TO POINT TO THE | 00000DA0: 46 49 52 53 54 20 42 4C 4F 43 4B 20 4F 46 20 54 |FIRST BLOCK OF T| 00000DB0: 48 45 20 46 49 52 53 54 20 52 45 43 4F 52 44 20 |HE FIRST RECORD | 00000DC0: 57 48 49 43 48 20 45 58 49 53 54 53 2E 0D 0D 34 |WHICH EXISTS...4| 00000DD0: 29 20 C3 48 41 4E 47 49 4E 47 20 54 48 45 20 CE |) .HANGING THE .| 00000DE0: D4 D3 20 50 4F 49 4E 54 45 52 53 20 49 4E 20 54 |.. POINTERS IN T| 00000DF0: 48 45 20 46 49 52 53 54 20 41 4E 44 20 4C 41 53 |HE FIRST AND LAS| 00000E00: 54 20 42 4C 4F 43 4B 53 20 4F 46 20 45 41 43 48 |T BLOCKS OF EACH| 00000E10: 20 52 45 43 4F 52 44 2C 20 53 4F 20 54 48 41 54 | RECORD, SO THAT| 00000E20: 20 54 48 45 20 52 45 43 4F 52 44 53 20 41 52 45 | THE RECORDS ARE| 00000E30: 20 41 50 50 45 4E 44 45 44 20 49 4E 54 4F 20 41 | APPENDED INTO A| 00000E40: 20 53 54 52 49 4E 47 20 4F 46 20 42 4C 4F 43 4B | STRING OF BLOCK| 00000E50: 53 2E 0D 0D C1 4C 53 4F 2C 20 54 48 49 4E 4B 20 |S....LSO, THINK | 00000E60: 41 42 4F 55 54 20 54 48 45 20 52 45 56 45 52 53 |ABOUT THE REVERS| 00000E70: 45 20 50 52 4F 43 45 53 53 2E 20 C3 4F 4E 56 45 |E PROCESS. .ONVE| 00000E80: 52 54 20 57 49 4C 4C 20 54 41 4B 45 20 41 20 C3 |RT WILL TAKE A .| 00000E90: 4F 4D 4D 4F 44 4F 52 45 20 D3 C5 D1 20 46 49 4C |OMMODORE ... FIL| 00000EA0: 45 20 57 48 49 43 48 20 43 4F 4D 50 4C 45 54 45 |E WHICH COMPLETE| 00000EB0: 4C 59 20 44 45 46 49 4E 45 53 20 41 20 C7 C5 CF |LY DEFINES A ...| 00000EC0: D3 20 D6 CC C9 D2 20 4F 52 20 D3 C5 D1 20 46 49 |. .... OR ... FI| 00000ED0: 4C 45 20 41 4E 44 20 57 49 4C 4C 20 43 4F 4E 56 |LE AND WILL CONV| 00000EE0: 45 52 54 20 49 54 20 54 4F 20 54 48 45 20 43 4F |ERT IT TO THE CO| 00000EF0: 52 52 45 43 54 20 53 54 52 55 43 54 55 52 45 2E |RRECT STRUCTURE.| 00000F00: 20 D3 4F 46 54 57 41 52 45 20 44 45 56 45 4C 4F | .OFTWARE DEVELO| 00000F10: 50 45 52 53 20 4D 41 59 20 46 49 4E 44 20 54 48 |PERS MAY FIND TH| 00000F20: 49 53 20 55 53 45 46 55 4C 3B 20 49 46 20 59 4F |IS USEFUL; IF YO| 00000F30: 55 20 41 52 45 20 55 53 49 4E 47 20 41 20 53 54 |U ARE USING A ST| 00000F40: 41 4E 44 41 52 44 20 C3 4F 4D 4D 4F 44 4F 52 45 |ANDARD .OMMODORE| 00000F50: 20 41 53 53 45 4D 42 4C 45 52 20 57 48 49 43 48 | ASSEMBLER WHICH| 00000F60: 20 43 52 45 41 54 45 53 20 C3 4F 4D 4D 4F 44 4F | CREATES .OMMODO| 00000F70: 52 45 20 D3 C5 D1 20 46 49 4C 45 53 2C 20 54 48 |RE ... FILES, TH| 00000F80: 45 4E 20 49 46 20 54 48 45 20 44 41 54 41 20 49 |EN IF THE DATA I| 00000F90: 53 20 53 45 54 20 55 50 20 52 49 47 48 54 2C 20 |S SET UP RIGHT, | 00000FA0: C3 4F 4E 56 45 52 54 20 43 41 4E 20 42 45 20 55 |.ONVERT CAN BE U| 00000FB0: 53 45 44 20 54 4F 20 54 55 52 4E 20 54 48 45 20 |SED TO TURN THE | 00000FC0: C3 4F 4D 4D 4F 44 4F 52 45 20 D3 C5 D1 20 46 49 |.OMMODORE ... FI| 00000FD0: 4C 45 20 49 4E 54 4F 20 41 20 52 55 4E 4E 41 42 |LE INTO A RUNNAB| 00000FE0: 4C 45 20 C7 C5 CF D3 20 D6 CC C9 D2 20 4F 52 20 |LE .... .... OR | 00000FF0: D3 C5 D1 20 41 50 50 4C 49 43 41 54 49 4F 4E 21 |... APPLICATION!| 00001000: 20 D7 45 20 57 49 4C 4C 20 50 4F 53 54 20 41 20 | .E WILL POST A | 00001010: 4E 4F 54 45 20 49 4E 20 54 48 45 20 46 55 54 55 |NOTE IN THE FUTU| 00001020: 52 45 20 41 42 4F 55 54 20 48 4F 57 20 54 4F 20 |RE ABOUT HOW TO | 00001030: 44 4F 20 54 48 49 53 2E 0D 0D C1 D0 D0 C5 CE C4 |DO THIS.........| 00001040: C9 D8 20 C3 20 28 D0 34 33 32 29 20 C3 CF D2 D2 |.. . (.432) ....| 00001050: C5 C3 D4 C9 CF CE D3 2E 2E 2E 0D 0D D4 48 41 4E |.............HAN| 00001060: 4B 53 20 46 4F 52 20 CA 50 50 20 41 4E 44 20 CD |KS FOR .PP AND .| 00001070: 49 4B 45 D4 32 32 20 46 4F 52 20 41 4C 45 52 54 |IKE.22 FOR ALERT| 00001080: 49 4E 47 20 4D 45 20 54 4F 20 53 4F 4D 45 20 45 |ING ME TO SOME E| 00001090: 52 52 4F 52 53 20 4F 4E 20 D0 34 33 32 20 4F 46 |RRORS ON .432 OF| 000010A0: 20 54 48 45 20 D0 52 4F 47 20 D2 45 46 20 CD 41 | THE .ROG .EF .A| 000010B0: 4E 55 41 4C 3A 0D 0D C4 4F 4E 45 D7 49 54 48 C9 |NUAL:...ONE.ITH.| 000010C0: CF 20 53 48 4F 55 4C 44 20 52 45 41 44 20 24 43 |. SHOULD READ $C| 000010D0: 32 35 46 20 C3 4F 50 59 D3 54 52 49 4E 47 20 53 |25F .OPY.TRING S| 000010E0: 48 4F 55 4C 44 20 52 45 41 44 20 24 43 32 36 35 |HOULD READ $C265| 000010F0: 0D 0D C4 C5 D3 CB 20 C1 C3 C3 C5 D3 D3 CF D2 C9 |...... .........| 00001100: C5 D3 20 C9 CE 20 C1 D0 D0 CC C9 C3 C1 D4 C9 CF |.. .. ..........| 00001110: CE D3 0D 0D D4 48 49 53 20 4E 4F 54 45 20 49 53 |.....HIS NOTE IS| 00001120: 20 46 4F 52 20 50 45 4F 50 4C 45 20 57 52 49 54 | FOR PEOPLE WRIT| 00001130: 49 4E 47 20 41 50 50 4C 49 43 41 54 49 4F 4E 53 |ING APPLICATIONS| 00001140: 20 57 48 49 43 48 20 41 4C 4C 4F 57 20 54 48 45 | WHICH ALLOW THE| 00001150: 20 55 53 45 52 20 54 4F 20 52 55 4E 20 44 45 53 | USER TO RUN DES| 00001160: 4B 20 41 43 43 45 53 53 4F 52 49 45 53 2E 0D 0D |K ACCESSORIES...| 00001170: CD 4F 53 54 20 C7 C5 CF D3 20 41 50 50 4C 49 43 |.OST .... APPLIC| 00001180: 41 54 49 4F 4E 53 20 54 48 41 54 20 48 41 56 45 |ATIONS THAT HAVE| 00001190: 20 42 45 45 4E 20 57 52 49 54 54 45 4E 20 41 52 | BEEN WRITTEN AR| 000011A0: 45 20 D6 CC C9 D2 20 4D 4F 44 55 4C 45 20 53 57 |E .... MODULE SW| 000011B0: 41 50 50 49 4E 47 20 41 50 50 4C 49 43 41 54 49 |APPING APPLICATI| 000011C0: 4F 4E 53 2C 20 41 4E 44 20 53 4F 20 54 48 45 20 |ONS, AND SO THE | 000011D0: 44 49 53 4B 20 43 4F 4E 54 41 49 4E 49 4E 47 20 |DISK CONTAINING | 000011E0: 54 48 45 20 41 50 50 4C 49 43 41 54 49 4F 4E 20 |THE APPLICATION | 000011F0: 4D 55 53 54 20 41 4C 57 41 59 53 20 42 45 20 49 |MUST ALWAYS BE I| 00001200: 4E 20 4F 4E 45 20 4F 46 20 54 48 45 20 41 43 54 |N ONE OF THE ACT| 00001210: 49 56 45 20 44 52 49 56 45 53 2E 20 D4 48 45 20 |IVE DRIVES. .HE | 00001220: 43 4F 4E 56 45 4E 54 49 4F 4E 20 46 4F 52 20 50 |CONVENTION FOR P| 00001230: 4C 41 43 45 4D 45 4E 54 20 4F 46 20 44 45 53 4B |LACEMENT OF DESK| 00001240: 20 41 43 43 45 53 53 4F 52 49 45 53 20 49 53 20 | ACCESSORIES IS | 00001250: 54 48 41 54 20 54 48 45 59 20 4D 55 53 54 20 42 |THAT THEY MUST B| 00001260: 45 20 4F 4E 20 54 48 45 20 41 50 50 4C 49 43 41 |E ON THE APPLICA| 00001270: 54 49 4F 4E 20 44 49 53 4B 2E 20 D4 48 49 53 20 |TION DISK. .HIS | 00001280: 57 41 59 2C 20 54 48 45 20 C4 C1 53 20 57 48 49 |WAY, THE ..S WHI| 00001290: 43 48 20 41 50 50 45 41 52 20 49 4E 20 54 48 45 |CH APPEAR IN THE| 000012A0: 20 41 50 50 4C 49 43 41 54 49 4F 4E 27 53 20 C7 | APPLICATION'S .| 000012B0: C5 CF D3 20 4D 45 4E 55 20 41 52 45 20 41 4C 57 |... MENU ARE ALW| 000012C0: 41 59 53 20 41 43 43 45 53 53 49 42 4C 45 2E 20 |AYS ACCESSIBLE. | 000012D0: C1 50 50 4C 49 43 41 54 49 4F 4E 53 20 4F 46 20 |.PPLICATIONS OF | 000012E0: 54 48 49 53 20 54 59 50 45 20 57 48 49 43 48 20 |THIS TYPE WHICH | 000012F0: 41 4C 4C 4F 57 20 54 48 45 20 55 53 45 52 20 54 |ALLOW THE USER T| 00001300: 4F 20 4C 4F 41 44 20 44 41 54 41 20 46 52 4F 4D |O LOAD DATA FROM| 00001310: 20 54 48 45 20 4F 54 48 45 52 20 44 52 49 56 45 | THE OTHER DRIVE| 00001320: 20 4D 55 53 54 20 4B 45 45 50 20 54 52 41 43 4B | MUST KEEP TRACK| 00001330: 20 4F 46 20 57 48 49 43 48 20 44 52 49 56 45 20 | OF WHICH DRIVE | 00001340: 49 53 20 54 48 45 20 41 50 50 4C 49 43 41 54 49 |IS THE APPLICATI| 00001350: 4F 4E 20 44 52 49 56 45 2E 20 C6 4F 52 20 45 58 |ON DRIVE. .OR EX| 00001360: 41 4D 50 4C 45 2C 20 41 53 53 55 4D 45 20 54 48 |AMPLE, ASSUME TH| 00001370: 45 20 41 50 50 4C 49 43 41 54 49 4F 4E 20 44 49 |E APPLICATION DI| 00001380: 53 4B 20 49 53 20 49 4E 20 44 52 49 56 45 20 C1 |SK IS IN DRIVE .| 00001390: 20 41 4E 44 20 54 48 45 20 44 41 54 41 20 44 49 | AND THE DATA DI| 000013A0: 53 4B 20 49 53 20 49 4E 20 44 52 49 56 45 20 C2 |SK IS IN DRIVE .| 000013B0: 2E 20 D7 48 45 4E 20 54 48 45 20 41 50 50 4C 49 |. .HEN THE APPLI| 000013C0: 43 41 54 49 4F 4E 20 49 53 20 52 55 4E 20 46 52 |CATION IS RUN FR| 000013D0: 4F 4D 20 54 48 45 20 44 45 53 4B D4 4F 50 2C 20 |OM THE DESK.OP, | 000013E0: 4F 4E 45 20 4F 46 20 54 48 45 20 46 49 52 53 54 |ONE OF THE FIRST| 000013F0: 20 54 48 49 4E 47 53 20 49 54 20 44 4F 45 53 20 | THINGS IT DOES | 00001400: 49 53 20 54 4F 20 52 45 41 44 20 54 48 45 20 44 |IS TO READ THE D| 00001410: 49 53 4B 27 53 20 44 49 52 45 43 54 4F 52 59 2C |ISK'S DIRECTORY,| 00001420: 20 47 52 41 42 42 49 4E 47 20 54 48 45 20 4E 41 | GRABBING THE NA| 00001430: 4D 45 53 20 4F 46 20 54 48 45 20 C4 C1 53 20 4F |MES OF THE ..S O| 00001440: 4E 20 54 48 41 54 20 44 49 53 4B 20 41 4E 44 20 |N THAT DISK AND | 00001450: 53 54 55 46 46 49 4E 47 20 54 48 45 4D 20 49 4E |STUFFING THEM IN| 00001460: 54 4F 20 54 48 45 20 C7 C5 CF D3 20 4D 45 4E 55 |TO THE .... MENU| 00001470: 20 44 45 46 49 4E 49 54 49 4F 4E 20 54 41 42 4C | DEFINITION TABL| 00001480: 45 2E 20 D4 48 45 4E 20 57 48 45 4E 20 54 48 45 |E. .HEN WHEN THE| 00001490: 20 55 53 45 52 20 48 41 53 20 4F 50 45 4E 45 44 | USER HAS OPENED| 000014A0: 20 41 20 44 41 54 41 46 49 4C 45 20 57 48 49 43 | A DATAFILE WHIC| 000014B0: 48 20 49 53 20 4F 4E 20 54 48 45 20 44 49 53 4B |H IS ON THE DISK| 000014C0: 20 49 4E 20 44 52 49 56 45 20 C2 2C 20 41 4E 44 | IN DRIVE ., AND| 000014D0: 20 48 45 20 53 45 4C 45 43 54 53 20 41 20 C4 C1 | HE SELECTS A ..| 000014E0: 20 46 52 4F 4D 20 54 48 45 20 4D 45 4E 55 2C 20 | FROM THE MENU, | 000014F0: 54 48 45 20 41 50 50 4C 49 43 41 54 49 4F 4E 20 |THE APPLICATION | 00001500: 4D 55 53 54 20 43 41 4C 4C 20 CF 50 45 4E C4 49 |MUST CALL .PEN.I| 00001510: 53 4B 20 54 4F 20 4F 50 45 4E 20 44 52 49 56 45 |SK TO OPEN DRIVE| 00001520: 20 C1 20 54 4F 20 52 55 4E 20 54 48 45 20 C4 C1 | . TO RUN THE ..| 00001530: 2E 20 D7 48 45 4E 20 54 48 45 20 C4 C1 20 46 49 |. .HEN THE .. FI| 00001540: 4E 49 53 48 45 53 2C 20 54 48 45 20 41 50 50 4C |NISHES, THE APPL| 00001550: 49 43 41 54 49 4F 4E 20 4D 55 53 54 20 43 41 4C |ICATION MUST CAL| 00001560: 4C 20 CF 50 45 4E C4 49 53 4B 20 54 4F 20 52 45 |L .PEN.ISK TO RE| 00001570: 2D 4F 50 45 4E 20 54 48 45 20 44 41 54 41 20 44 |-OPEN THE DATA D| 00001580: 49 53 4B 20 49 4E 20 44 52 49 56 45 20 C2 2E 20 |ISK IN DRIVE .. | 00001590: C9 46 20 54 48 45 20 53 59 53 54 45 4D 20 4F 4E |.F THE SYSTEM ON| 000015A0: 4C 59 20 48 41 53 20 4F 4E 45 20 44 52 49 56 45 |LY HAS ONE DRIVE| 000015B0: 2C 20 54 48 45 4E 20 54 48 45 52 45 20 49 53 20 |, THEN THERE IS | 000015C0: 4E 4F 20 50 52 4F 42 4C 45 4D 20 42 45 43 41 55 |NO PROBLEM BECAU| 000015D0: 53 45 20 54 48 45 20 44 49 53 4B 20 49 4E 20 44 |SE THE DISK IN D| 000015E0: 52 49 56 45 20 C1 20 43 4F 4E 54 41 49 4E 53 20 |RIVE . CONTAINS | 000015F0: 54 48 45 20 41 50 50 4C 49 43 41 54 49 4F 4E 2C |THE APPLICATION,| 00001600: 20 54 48 45 20 C4 C1 53 2C 20 41 4E 44 20 54 48 | THE ..S, AND TH| 00001610: 45 20 44 41 54 41 46 49 4C 45 3B 20 4E 4F 20 44 |E DATAFILE; NO D| 00001620: 52 49 56 45 20 53 57 49 54 43 48 49 4E 47 20 49 |RIVE SWITCHING I| 00001630: 53 20 52 45 51 55 49 52 45 44 20 57 48 45 4E 20 |S REQUIRED WHEN | 00001640: 52 55 4E 4E 49 4E 47 20 C4 C1 53 2E 0D 0D C6 4F |RUNNING ..S....O| 00001650: 52 20 41 50 50 4C 49 43 41 54 49 4F 4E 53 20 57 |R APPLICATIONS W| 00001660: 48 49 43 48 20 52 55 4E 20 45 4E 54 49 52 45 4C |HICH RUN ENTIREL| 00001670: 59 20 52 45 53 49 44 45 4E 54 20 49 4E 20 4D 45 |Y RESIDENT IN ME| 00001680: 4D 4F 52 59 20 28 4E 45 56 45 52 20 53 57 41 50 |MORY (NEVER SWAP| 00001690: 50 49 4E 47 20 4D 4F 44 55 4C 45 53 29 20 59 4F |PING MODULES) YO| 000016A0: 55 20 4D 49 47 48 54 20 42 45 20 54 45 4D 50 54 |U MIGHT BE TEMPT| 000016B0: 45 44 20 54 4F 20 41 4C 4C 4F 57 20 54 48 45 20 |ED TO ALLOW THE | 000016C0: 55 53 45 52 20 54 4F 20 52 45 4D 4F 56 45 20 54 |USER TO REMOVE T| 000016D0: 48 45 20 44 49 53 4B 20 4F 4E 20 41 20 4F 4E 45 |HE DISK ON A ONE| 000016E0: 2D 44 52 49 56 45 20 53 59 53 54 45 4D 20 41 4E |-DRIVE SYSTEM AN| 000016F0: 44 20 49 4E 53 45 52 54 20 41 20 44 49 46 46 45 |D INSERT A DIFFE| 00001700: 52 45 4E 54 20 44 41 54 41 20 44 49 53 4B 2E 20 |RENT DATA DISK. | 00001710: C1 50 50 4C 49 43 41 54 49 4F 4E 53 20 53 55 43 |.PPLICATIONS SUC| 00001720: 48 20 41 53 20 54 48 45 20 C9 43 4F 4E 20 C5 44 |H AS THE .CON .D| 00001730: 49 54 4F 52 20 41 4C 4C 4F 57 20 54 48 49 53 2E |ITOR ALLOW THIS.| 00001740: 20 C2 55 54 20 42 45 20 53 55 52 45 20 54 48 41 | .UT BE SURE THA| 00001750: 54 20 49 46 20 59 4F 55 20 41 4C 4C 4F 57 20 54 |T IF YOU ALLOW T| 00001760: 48 49 53 20 43 41 50 41 42 49 4C 49 54 59 2C 20 |HIS CAPABILITY, | 00001770: 54 48 41 54 20 57 48 45 4E 20 54 48 45 20 C4 C1 |THAT WHEN THE ..| 00001780: 20 49 53 20 53 45 4C 45 43 54 45 44 20 C1 CE C4 | IS SELECTED ...| 00001790: 20 54 48 45 20 41 50 50 4C 49 43 41 54 49 4F 4E | THE APPLICATION| 000017A0: 20 44 49 53 4B 20 48 41 53 20 42 45 45 4E 20 52 | DISK HAS BEEN R| 000017B0: 45 4D 4F 56 45 44 2C 20 59 4F 55 20 4D 55 53 54 |EMOVED, YOU MUST| 000017C0: 20 45 49 54 48 45 52 20 31 29 20 4E 4F 54 20 41 | EITHER 1) NOT A| 000017D0: 4C 4C 4F 57 20 54 48 45 20 C4 C1 20 54 4F 20 52 |LLOW THE .. TO R| 000017E0: 55 4E 2C 20 4F 52 20 32 29 20 50 55 54 20 55 50 |UN, OR 2) PUT UP| 000017F0: 20 41 20 44 49 41 4C 4F 47 20 42 4F 58 20 52 45 | A DIALOG BOX RE| 00001800: 51 55 45 53 54 49 4E 47 20 54 48 41 54 20 54 48 |QUESTING THAT TH| 00001810: 45 20 41 50 50 4C 49 43 41 54 49 4F 4E 20 44 49 |E APPLICATION DI| 00001820: 53 4B 20 42 45 20 49 4E 53 45 52 54 45 44 20 53 |SK BE INSERTED S| 00001830: 4F 20 54 48 41 54 20 54 48 45 20 C4 C1 20 43 41 |O THAT THE .. CA| 00001840: 4E 20 52 55 4E 2E 0D 0D CD C1 C3 D2 CF D3 20 C6 |N RUN......... .| 00001850: CF D2 20 D2 C5 C6 C5 D2 C5 CE C3 C5 20 CD C1 CE |.. ......... ...| 00001860: D5 C1 CC 0D 0D 0D 0D D9 4F 55 20 47 55 59 53 20 |........OU GUYS | 00001870: 41 52 45 20 41 42 53 4F 4C 55 54 45 4C 59 20 52 |ARE ABSOLUTELY R| 00001880: 49 47 48 54 21 20 D4 48 45 20 D2 45 46 45 52 45 |IGHT! .HE .EFERE| 00001890: 4E 43 45 20 CD 41 4E 55 41 4C 20 44 4F 45 53 20 |NCE .ANUAL DOES | 000018A0: 4E 4F 54 20 48 41 56 45 20 41 20 50 41 47 45 20 |NOT HAVE A PAGE | 000018B0: 44 45 53 43 52 49 42 49 4E 47 20 54 48 45 20 4D |DESCRIBING THE M| 000018C0: 41 43 52 4F 53 20 57 45 20 55 53 45 20 49 4E 20 |ACROS WE USE IN | 000018D0: 54 48 45 20 53 4F 55 52 43 45 20 4C 49 53 54 49 |THE SOURCE LISTI| 000018E0: 4E 47 53 2E 20 C8 45 52 45 20 41 52 45 20 54 48 |NGS. .ERE ARE TH| 000018F0: 45 20 35 20 4D 4F 53 54 20 50 4F 50 55 4C 41 52 |E 5 MOST POPULAR| 00001900: 3A 0D 0D 2A 2A 2A 20 CC 4F 41 44 C2 20 2A 2A 2A |:..*** .OAD. ***| 00001910: 0D 0D CC 4F 41 44 C2 20 49 53 20 55 53 45 44 20 |...OAD. IS USED | 00001920: 54 4F 20 53 54 55 46 46 20 41 20 43 4F 4E 53 54 |TO STUFF A CONST| 00001930: 41 4E 54 20 56 41 4C 55 45 20 49 4E 54 4F 20 41 |ANT VALUE INTO A| 00001940: 20 53 49 4E 47 4C 45 2D 42 59 54 45 20 4D 45 4D | SINGLE-BYTE MEM| 00001950: 4F 52 59 20 4C 4F 43 41 54 49 4F 4E 2E 0D 0D 2E |ORY LOCATION....| 00001960: 4D 41 43 52 4F 20 CC 4F 41 44 C2 20 41 44 44 52 |MACRO .OAD. ADDR| 00001970: 2C 56 41 4C 55 45 0D 20 20 20 20 20 20 20 4C 44 |,VALUE. LD| 00001980: 41 20 20 20 23 56 41 4C 55 45 0D 20 20 20 20 20 |A #VALUE. | 00001990: 20 20 53 54 41 20 20 20 41 44 44 52 20 2E 45 4E | STA ADDR .EN| 000019A0: 44 4D 0D 0D 53 41 4D 50 4C 45 20 55 53 41 47 45 |DM..SAMPLE USAGE| 000019B0: 53 3A 0D 0D 0D 20 20 20 20 20 20 20 CC 4F 41 44 |S:... .OAD| 000019C0: C2 20 52 30 C8 2C 23 35 32 0D 20 20 20 20 20 20 |. R0.,#52. | 000019D0: 20 CC 4F 41 44 C2 20 24 30 30 30 31 2C 23 24 33 | .OAD. $0001,#$3| 000019E0: 35 0D 20 20 20 20 20 20 20 CC 4F 41 44 C2 20 4D |5. .OAD. M| 000019F0: 4F 55 53 45 D9 D0 4F 53 49 54 49 4F 4E 2C 23 33 |OUSE..OSITION,#3| 00001A00: 34 0D 0D 2A 2A 2A 20 CC 4F 41 44 D7 20 2A 2A 2A |4..*** .OAD. ***| 00001A10: 0D 0D CC 4F 41 44 D7 20 49 53 20 55 53 45 44 20 |...OAD. IS USED | 00001A20: 54 4F 20 53 54 55 46 46 20 41 20 57 4F 52 44 20 |TO STUFF A WORD | 00001A30: 43 4F 4E 53 54 41 4E 54 20 49 4E 54 4F 20 41 20 |CONSTANT INTO A | 00001A40: 57 4F 52 44 20 28 54 57 4F 20 53 45 51 55 45 4E |WORD (TWO SEQUEN| 00001A50: 54 49 41 4C 20 42 59 54 45 53 29 20 4D 45 4D 4F |TIAL BYTES) MEMO| 00001A60: 52 59 20 4C 4F 43 41 54 49 4F 4E 2E 0D 0D 2E 4D |RY LOCATION....M| 00001A70: 41 43 52 4F 20 20 CC 4F 41 44 D7 20 41 44 44 52 |ACRO .OAD. ADDR| 00001A80: 2C 56 41 4C 55 45 0D 20 20 20 20 20 20 20 20 4C |,VALUE. L| 00001A90: 44 41 20 20 20 23 5B 56 41 4C 55 45 0D 20 20 20 |DA #[VALUE. | 00001AA0: 20 20 20 20 20 53 54 41 20 20 20 41 44 44 52 0D | STA ADDR.| 00001AB0: 20 20 20 20 20 20 20 20 4C 44 41 20 20 20 23 5D | LDA #]| 00001AC0: 56 41 4C 55 45 0D 20 20 20 20 20 20 20 20 53 54 |VALUE. ST| 00001AD0: 41 20 20 20 41 44 44 52 2B 31 20 2E 45 4E 44 4D |A ADDR+1 .ENDM| 00001AE0: 0D 0D CE 4F 54 45 20 54 48 41 54 20 54 48 45 20 |...OTE THAT THE | 00001AF0: 5B 20 43 48 41 52 20 49 53 20 55 53 45 44 20 54 |[ CHAR IS USED T| 00001B00: 4F 20 47 45 54 20 54 48 45 20 4C 4F 57 20 42 59 |O GET THE LOW BY| 00001B10: 54 45 20 56 41 4C 55 45 20 4F 46 20 41 20 57 4F |TE VALUE OF A WO| 00001B20: 52 44 20 43 4F 4E 53 54 41 4E 54 2C 20 41 4E 44 |RD CONSTANT, AND| 00001B30: 20 5D 20 49 53 20 55 53 45 44 20 54 4F 20 47 45 | ] IS USED TO GE| 00001B40: 54 20 54 48 45 20 48 49 47 48 20 42 59 54 45 20 |T THE HIGH BYTE | 00001B50: 56 41 4C 55 45 2E 2E 2E 0D 0D D3 41 4D 50 4C 45 |VALUE......AMPLE| 00001B60: 20 55 53 41 47 45 3A 20 20 CC 4F 41 44 D7 20 52 | USAGE: .OAD. R| 00001B70: 30 2C 23 24 34 30 30 30 0D 0D 2A 2A 2A 20 CD 4F |0,#$4000..*** .O| 00001B80: 56 45 C2 20 2A 2A 2A 0D 0D CD 4F 56 45 C2 20 49 |VE. ***...OVE. I| 00001B90: 53 20 55 53 45 44 20 54 4F 20 43 4F 50 59 20 44 |S USED TO COPY D| 00001BA0: 41 54 41 20 46 52 4F 4D 20 4F 4E 45 20 4D 45 4D |ATA FROM ONE MEM| 00001BB0: 4F 52 59 20 4C 4F 43 41 54 49 4F 4E 20 54 4F 20 |ORY LOCATION TO | 00001BC0: 41 4E 4F 54 48 45 52 2E 0D 0D 2E 4D 41 43 52 4F |ANOTHER....MACRO| 00001BD0: 20 CD 4F 56 45 C2 20 53 4F 55 52 43 45 2C 44 45 | .OVE. SOURCE,DE| 00001BE0: 53 54 0D 20 20 20 20 20 20 20 4C 44 41 20 20 20 |ST. LDA | 00001BF0: 53 4F 55 52 43 45 0D 20 20 20 20 20 20 20 53 54 |SOURCE. ST| 00001C00: 41 20 20 20 44 45 53 54 20 2E 45 4E 44 4D 0D 0D |A DEST .ENDM..| 00001C10: D3 41 4D 50 4C 45 20 55 53 41 47 45 3A 0D 20 20 |.AMPLE USAGE:. | 00001C20: 20 20 20 20 20 CD 4F 56 45 C2 20 52 30 C8 2C 52 | .OVE. R0.,R| 00001C30: 32 C8 20 20 20 3B 53 45 54 20 52 32 C8 3D 52 30 |2. ;SET R2.=R0| 00001C40: C8 0D 0D 2A 2A 2A 20 CD 4F 56 45 D7 20 2A 2A 2A |...*** .OVE. ***| 00001C50: 0D 0D D3 41 4D 45 20 41 53 20 CD 4F 56 45 C2 2C |...AME AS .OVE.,| 00001C60: 20 42 55 54 20 43 4F 50 49 45 53 20 41 20 57 4F | BUT COPIES A WO| 00001C70: 52 44 2E 0D 0D 2E 4D 41 43 52 4F 20 CD 4F 56 45 |RD....MACRO .OVE| 00001C80: D7 20 53 4F 55 52 43 45 2C 44 45 53 54 0D 20 20 |. SOURCE,DEST. | 00001C90: 20 20 20 20 20 4C 44 41 20 20 20 53 4F 55 52 43 | LDA SOURC| 00001CA0: 45 0D 20 20 20 20 20 20 20 53 54 41 20 20 20 44 |E. STA D| 00001CB0: 45 53 54 0D 20 20 20 20 20 20 20 4C 44 41 20 20 |EST. LDA | 00001CC0: 20 53 4F 55 52 43 45 2B 31 0D 20 20 20 20 20 20 | SOURCE+1. | 00001CD0: 20 53 54 41 20 20 20 44 45 53 54 2B 31 20 2E 45 | STA DEST+1 .E| 00001CE0: 4E 44 4D 0D 0D D0 D2 C7 D4 CF C7 C5 CF D3 20 28 |NDM........... (| 00001CF0: C3 48 41 50 54 45 52 20 33 29 20 C3 4F 52 52 45 |.HAPTER 3) .ORRE| 00001D00: 43 54 49 4F 4E 53 3A 0D 0D D3 45 56 45 52 41 4C |CTIONS:...EVERAL| 00001D10: 20 4F 46 20 59 4F 55 20 48 41 56 45 20 4E 4F 54 | OF YOU HAVE NOT| 00001D20: 49 43 45 44 20 54 48 41 54 20 54 48 45 20 D0 D2 |ICED THAT THE ..| 00001D30: C7 D4 CF C7 C5 CF D3 20 55 54 49 4C 49 54 59 20 |....... UTILITY | 00001D40: 44 45 53 43 52 49 42 45 44 20 49 4E 20 43 48 41 |DESCRIBED IN CHA| 00001D50: 50 54 45 52 20 33 20 44 4F 45 53 20 4E 4F 54 20 |PTER 3 DOES NOT | 00001D60: 57 4F 52 4B 2E 20 D7 49 54 48 20 54 48 45 20 46 |WORK. .ITH THE F| 00001D70: 4F 4C 4C 4F 57 49 4E 47 20 43 4F 52 52 45 43 54 |OLLOWING CORRECT| 00001D80: 49 4F 4E 53 2C 20 59 4F 55 20 53 48 4F 55 4C 44 |IONS, YOU SHOULD| 00001D90: 20 48 41 56 45 20 4E 4F 20 50 52 4F 42 4C 45 4D | HAVE NO PROBLEM| 00001DA0: 20 57 49 54 48 20 49 54 2E 0D 0D CF 4E 20 50 41 | WITH IT....N PA| 00001DB0: 47 45 20 34 38 2C 20 52 45 50 4C 41 43 45 20 54 |GE 48, REPLACE T| 00001DC0: 48 45 20 22 50 53 45 43 54 20 34 30 30 22 20 57 |HE "PSECT 400" W| 00001DD0: 49 54 48 3A 0D 0D 2E 50 53 45 43 54 20 24 33 30 |ITH:...PSECT $30| 00001DE0: 34 20 3B D4 48 45 20 46 49 4C 45 48 45 41 44 45 |4 ;.HE FILEHEADE| 00001DF0: 52 20 44 4F 45 53 20 4E 4F 54 20 41 43 54 55 41 |R DOES NOT ACTUA| 00001E00: 4C 4C 59 20 53 54 41 52 54 20 41 54 20 24 33 30 |LLY START AT $30| 00001E10: 34 3B 20 54 48 49 53 20 50 53 45 43 54 20 49 53 |4; THIS PSECT IS| 00001E20: 20 4E 45 43 45 53 53 41 52 59 20 53 4F 20 54 48 | NECESSARY SO TH| 00001E30: 41 54 20 54 48 45 20 46 49 4C 45 48 45 41 44 45 |AT THE FILEHEADE| 00001E40: 52 20 4F 43 43 55 50 49 45 53 20 54 48 45 20 46 |R OCCUPIES THE F| 00001E50: 49 52 53 54 20 32 35 32 20 42 59 54 45 53 20 4F |IRST 252 BYTES O| 00001E60: 46 20 54 48 45 20 D0 D2 C7 20 46 49 4C 45 20 57 |F THE ... FILE W| 00001E70: 48 49 43 48 20 59 4F 55 52 20 41 53 53 45 4D 42 |HICH YOUR ASSEMB| 00001E80: 4C 45 52 20 43 52 45 41 54 45 53 2E 0D 0D D4 48 |LER CREATES....H| 00001E90: 45 20 43 4F 4D 4D 45 4E 54 53 20 42 45 4C 4F 57 |E COMMENTS BELOW| 00001EA0: 20 22 C6 49 4C 45 C8 45 41 44 45 52 22 20 53 48 | ".ILE.EADER" SH| 00001EB0: 4F 55 4C 44 20 52 45 41 44 3A 0D 0D 3B D4 48 45 |OULD READ:..;.HE| 00001EC0: 20 46 49 52 53 54 20 46 4F 55 52 20 42 59 54 45 | FIRST FOUR BYTE| 00001ED0: 53 20 4F 46 20 54 48 45 20 46 49 4C 45 48 45 41 |S OF THE FILEHEA| 00001EE0: 44 45 52 20 57 49 4C 4C 20 42 45 20 57 52 49 54 |DER WILL BE WRIT| 00001EF0: 54 45 4E 20 54 4F 20 54 48 45 20 48 45 41 44 45 |TEN TO THE HEADE| 00001F00: 52 20 42 4C 4F 43 4B 20 42 59 20 54 48 45 20 D0 |R BLOCK BY THE .| 00001F10: D2 C7 D4 CF C7 C5 CF D3 20 42 41 53 49 43 20 50 |........ BASIC P| 00001F20: 52 4F 47 52 41 4D 20 44 55 52 49 4E 47 20 43 4F |ROGRAM DURING CO| 00001F30: 4E 56 45 52 53 49 4F 4E 2E 20 C6 4F 52 20 59 4F |NVERSION. .OR YO| 00001F40: 55 52 20 49 4E 46 4F 52 4D 41 54 49 4F 4E 2C 20 |UR INFORMATION, | 00001F50: 54 48 45 20 46 49 52 53 54 20 46 4F 55 52 20 42 |THE FIRST FOUR B| 00001F60: 59 54 45 53 20 57 49 4C 4C 20 43 4F 4E 54 41 49 |YTES WILL CONTAI| 00001F70: 4E 3A 20 0D 0D 3B 20 20 20 20 20 2E 42 59 54 45 |N: ..; .BYTE| 00001F80: 20 24 30 30 2C 24 46 46 20 20 20 3B 4E 55 4C 4C | $00,$FF ;NULL| 00001F90: 20 50 4F 49 4E 54 45 52 20 0D 20 20 20 20 20 20 | POINTER . | 00001FA0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00001FB0: 3B 54 4F 20 4E 45 58 54 20 42 4C 4F 43 4B 20 0D |;TO NEXT BLOCK .| 00001FC0: 3B 20 20 20 20 20 2E 42 59 54 45 20 33 2C 32 31 |; .BYTE 3,21| 00001FD0: 20 20 20 20 20 20 3B 49 43 4F 4E 20 57 49 44 54 | ;ICON WIDT| 00001FE0: 48 20 41 4E 44 20 0D 20 20 20 20 20 20 20 20 20 |H AND . | 00001FF0: 20 20 20 20 20 20 20 20 20 20 20 20 20 3B 48 45 | ;HE| 00002000: 49 47 48 54 0D 0D D4 48 45 4E 20 54 48 45 53 45 |IGHT...HEN THESE| 00002010: 20 43 4F 4D 4D 45 4E 54 53 20 46 4F 4C 4C 4F 57 | COMMENTS FOLLOW| 00002020: 3A 0D 0D 3B D4 48 45 20 52 45 53 54 20 4F 46 20 |:..;.HE REST OF | 00002030: 54 48 45 20 48 45 41 44 45 52 20 57 49 4C 4C 20 |THE HEADER WILL | 00002040: 45 4E 44 20 55 50 20 49 4E 20 42 59 54 45 53 20 |END UP IN BYTES | 00002050: 24 30 34 2D 24 46 46 20 4F 46 20 54 48 45 20 46 |$04-$FF OF THE F| 00002060: 49 52 53 54 20 42 4C 4F 43 4B 20 4F 46 20 54 48 |IRST BLOCK OF TH| 00002070: 45 20 D0 D2 C7 20 46 49 4C 45 2E 20 D7 48 45 4E |E ... FILE. .HEN| 00002080: 20 54 48 49 53 20 46 49 4C 45 20 49 53 20 43 4F | THIS FILE IS CO| 00002090: 4E 56 45 52 54 45 44 2C 20 54 48 49 53 20 46 49 |NVERTED, THIS FI| 000020A0: 52 53 54 20 42 4C 4F 43 4B 20 57 49 4C 4C 20 42 |RST BLOCK WILL B| 000020B0: 45 43 4F 4D 45 20 54 48 45 20 50 52 4F 47 52 41 |ECOME THE PROGRA| 000020C0: 4D 27 53 20 48 45 41 44 45 52 20 42 4C 4F 43 4B |M'S HEADER BLOCK| 000020D0: 2C 20 41 4E 44 20 54 48 45 20 48 45 41 44 45 52 |, AND THE HEADER| 000020E0: 20 49 4E 46 4F 52 4D 41 54 49 4F 4E 20 46 52 4F | INFORMATION FRO| 000020F0: 4D 20 24 30 34 20 54 4F 20 24 46 46 20 49 4E 20 |M $04 TO $FF IN | 00002100: 54 48 45 20 42 4C 4F 43 4B 20 57 49 4C 4C 20 41 |THE BLOCK WILL A| 00002110: 4C 52 45 41 44 59 20 42 45 20 49 4E 20 54 48 45 |LREADY BE IN THE| 00002120: 20 43 4F 52 52 45 43 54 20 50 4C 41 43 45 2E 0D | CORRECT PLACE..| 00002130: 0D D4 48 45 20 52 45 53 54 20 4F 46 20 54 48 45 |..HE REST OF THE| 00002140: 20 48 45 41 44 45 52 20 46 52 4F 4D 20 D0 34 38 | HEADER FROM .48| 00002150: 20 46 4F 4C 4C 4F 57 53 20 46 52 4F 4D 20 48 45 | FOLLOWS FROM HE| 00002160: 52 45 2C 20 53 54 41 52 54 49 4E 47 20 57 49 54 |RE, STARTING WIT| 00002170: 48 20 54 48 45 20 2E 42 59 54 45 20 28 24 38 30 |H THE .BYTE ($80| 00002180: 2B 36 33 29 20 4C 49 4E 45 20 41 4E 44 20 45 4E |+63) LINE AND EN| 00002190: 44 49 4E 47 20 57 49 54 48 20 54 48 45 20 2E 42 |DING WITH THE .B| 000021A0: 59 54 45 20 30 2C 30 2C 30 2C 30 20 4C 49 4E 45 |YTE 0,0,0,0 LINE| 000021B0: 2E 20 D4 48 45 4E 20 52 45 50 4C 41 43 45 20 45 |. .HEN REPLACE E| 000021C0: 56 45 52 59 54 48 49 4E 47 20 4F 4E 20 54 48 45 |VERYTHING ON THE| 000021D0: 20 50 41 47 45 20 42 45 4C 4F 57 20 54 48 41 54 | PAGE BELOW THAT| 000021E0: 20 4C 49 4E 45 20 57 49 54 48 20 54 48 45 20 46 | LINE WITH THE F| 000021F0: 4F 4C 4C 4F 57 49 4E 47 3A 0D 0D 3B 54 48 45 20 |OLLOWING:..;THE | 00002200: 41 53 53 45 4D 42 4C 45 52 20 53 48 4F 55 4C 44 |ASSEMBLER SHOULD| 00002210: 20 46 49 4C 4C 20 41 4E 59 20 46 52 45 45 20 53 | FILL ANY FREE S| 00002220: 50 41 43 45 20 49 4E 20 48 45 52 45 20 57 49 54 |PACE IN HERE WIT| 00002230: 48 20 24 30 30 27 53 2C 20 55 4E 54 49 4C 20 54 |H $00'S, UNTIL T| 00002240: 48 45 20 4C 4F 43 41 54 49 4F 4E 20 43 4F 55 4E |HE LOCATION COUN| 00002250: 54 45 52 20 45 51 55 41 4C 53 20 24 34 30 30 2E |TER EQUALS $400.| 00002260: 0D 0D 2E 50 53 45 43 54 20 24 34 30 30 20 20 20 |...PSECT $400 | 00002270: 20 3B D4 48 45 20 43 4F 44 45 20 46 4F 4C 4C 4F | ;.HE CODE FOLLO| 00002280: 57 49 4E 47 20 54 48 49 53 20 50 53 45 43 54 20 |WING THIS PSECT | 00002290: 57 49 4C 4C 20 42 45 20 57 52 49 54 54 45 4E 20 |WILL BE WRITTEN | 000022A0: 49 4E 54 4F 20 42 4C 4F 43 4B 20 32 20 4F 46 20 |INTO BLOCK 2 OF | 000022B0: 54 48 45 20 D0 D2 C7 20 46 49 4C 45 2E 0D 0D C9 |THE ... FILE....| 000022C0: 4E 49 54 C3 4F 44 45 3A 0D 20 20 20 20 20 20 4C |NIT.ODE:. L| 000022D0: 44 41 20 23 32 31 20 20 20 20 3B 48 45 52 45 20 |DA #21 ;HERE | 000022E0: 41 52 45 20 54 57 4F 20 53 41 4D 50 4C 45 0D 20 |ARE TWO SAMPLE. | 000022F0: 20 20 20 20 20 53 54 41 20 52 30 CC 20 20 20 20 | STA R0. | 00002300: 3B 20 4C 49 4E 45 53 2E 20 C3 48 41 4E 47 45 20 |; LINES. .HANGE | 00002310: 54 48 45 53 45 2E 0D 0D 3B 52 45 53 54 20 4F 46 |THESE...;REST OF| 00002320: 20 41 50 50 4C 49 43 41 54 49 4F 4E 20 43 4F 44 | APPLICATION COD| 00002330: 45 20 47 4F 45 53 20 48 45 52 45 0D 0D C5 4E 44 |E GOES HERE...ND| 00002340: C3 4F 44 45 3A 20 20 20 3B D4 48 49 53 20 4C 41 |.ODE: ;.HIS LA| 00002350: 42 45 4C 20 49 53 20 55 53 45 20 42 59 20 54 48 |BEL IS USE BY TH| 00002360: 45 20 48 45 41 44 45 52 20 42 4C 4F 43 4B 20 54 |E HEADER BLOCK T| 00002370: 4F 20 53 54 4F 52 45 20 54 48 45 20 45 4E 44 49 |O STORE THE ENDI| 00002380: 4E 47 20 41 44 44 52 45 53 53 20 4F 46 20 54 48 |NG ADDRESS OF TH| 00002390: 45 20 41 50 50 4C 49 43 41 54 49 4F 4E 20 43 4F |E APPLICATION CO| 000023A0: 44 45 2E 0D 0D D4 C8 C9 D3 20 C3 CF CE C3 CC D5 |DE....... ......| 000023B0: C4 C5 D3 20 54 48 45 20 43 48 41 4E 47 45 53 20 |... THE CHANGES | 000023C0: 54 4F 20 50 41 47 45 20 34 38 2E 20 D4 48 45 20 |TO PAGE 48. .HE | 000023D0: 4F 4E 4C 59 20 4F 54 48 45 52 20 4E 45 43 45 53 |ONLY OTHER NECES| 000023E0: 53 41 52 59 20 43 48 41 4E 47 45 53 20 41 52 45 |SARY CHANGES ARE| 000023F0: 20 49 4E 20 54 48 45 20 D0 D2 C7 D4 CF C7 C5 CF | IN THE ........| 00002400: D3 20 42 41 53 49 43 20 50 52 4F 47 52 41 4D 2D |. BASIC PROGRAM-| 00002410: 20 53 45 45 20 4D 45 53 53 41 47 45 20 50 41 52 | SEE MESSAGE PAR| 00002420: 54 20 32 2E 2E 2E 0D 0D CE 4F 57 20 54 48 41 54 |T 2......OW THAT| 00002430: 20 57 45 20 48 41 56 45 20 43 4F 52 52 45 43 54 | WE HAVE CORRECT| 00002440: 45 44 20 54 48 45 20 48 45 41 44 45 52 20 42 4C |ED THE HEADER BL| 00002450: 4F 43 4B 20 4F 4E 20 50 41 47 45 20 34 38 2C 20 |OCK ON PAGE 48, | 00002460: 57 45 20 4E 45 45 44 20 54 4F 20 43 48 41 4E 47 |WE NEED TO CHANG| 00002470: 45 20 53 45 56 45 52 41 4C 20 4C 49 4E 45 53 20 |E SEVERAL LINES | 00002480: 4F 46 20 54 48 45 20 D0 D2 C7 D4 CF C7 C5 CF D3 |OF THE .........| 00002490: 20 42 41 53 49 43 20 50 52 4F 47 52 41 4D 20 57 | BASIC PROGRAM W| 000024A0: 48 49 43 48 20 49 53 20 4C 49 53 54 45 44 20 4F |HICH IS LISTED O| 000024B0: 4E 20 50 41 47 45 53 20 35 30 2D 35 32 2E 20 D2 |N PAGES 50-52. .| 000024C0: 45 50 4C 41 43 45 20 54 48 45 20 46 4F 4C 4C 4F |EPLACE THE FOLLO| 000024D0: 57 49 4E 47 20 4C 49 4E 45 53 20 57 49 54 48 20 |WING LINES WITH | 000024E0: 54 48 45 20 4C 49 4E 45 53 20 4C 49 53 54 45 44 |THE LINES LISTED| 000024F0: 20 42 45 4C 4F 57 3A 0D 0D 38 30 20 49 4E 50 55 | BELOW:..80 INPU| 00002500: 54 20 22 48 4F 55 52 20 20 20 20 20 20 20 28 45 |T "HOUR (E| 00002510: 58 3A 20 31 34 29 22 3B C8 0D 0D 31 38 30 20 D4 |X: 14)";...180 .| 00002520: 24 3D C8 D4 24 3A D3 24 3D C8 D3 24 3A 47 4F 53 |$=..$:.$=..$:GOS| 00002530: 55 42 20 31 30 30 30 0D 0D 32 31 30 20 46 4F 52 |UB 1000..210 FOR| 00002540: 20 C9 3D 32 20 54 4F 20 36 38 0D 0D 33 31 30 20 | .=2 TO 68..310 | 00002550: 46 4F 52 20 C9 3D 30 20 54 4F 20 28 33 32 2A C5 |FOR .=0 TO (32*.| 00002560: 29 2B 32 0D 0D C4 C5 CC C5 D4 C5 20 CC C9 CE C5 |)+2........ ....| 00002570: 20 32 34 30 20 28 32 34 30 20 47 45 54 23 32 2C | 240 (240 GET#2,| 00002580: 43 54 24 29 0D 0D CD C1 CB C5 20 D3 D5 D2 C5 20 |CT$)...... .... | 00002590: CC C9 CE C5 20 33 30 35 30 20 D2 C5 C1 C4 D3 3A |.... 3050 .....:| 000025A0: 20 33 30 35 30 20 46 4F 52 20 C9 3D C9 20 54 4F | 3050 FOR .=. TO| 000025B0: 20 33 31 0D 0D 0D 0D 0D | 31..... |
....
GEOS CONVERT UTILITY FILE STRUCT
URE..THE GEOS CONVERT PROGRAM IS USED TO
CONVERT GEOS VLIR AND SEQ STRUCTURE FIL
ES TO COMMODORE SEQ STRUCTURE FILES. WIT
HIN THE COMMODORE SEQ FILE WHICH IS CREA
TED, ALL OF THE GEOS-RELATED INFORMATION
ABOUT THE FILE IS CONTAINED. THIS INCLU
DES THE FILE'S:... - DIRECTORY ENTRY. -
HEADER BLOCK. - INDEX TABLE (IF FILE IS
VLIR). - DATA BLOCKS..CONVERT ALSO WILL
CONVERT THESE "GEOS FORMAT IN COMMODORE
SEQ" FILES BACK TO THEIR ORIGINAL FORM..
.WHETHER CONVERT IS PROCESSING A GEOS VL
IR OR SEQ FILE, THE FIRST TWO BLOCKS OF
THE RESULTING COMMODORE SEQ FILE CONTAIN
THE SAME INFORMATION:..BLOCK 1: BYTES 0
AND 1 CONTAIN STANDARD. NEXT TR
ACK AND SECTOR POINTERS. (NTS).
BYTES 2 TO 31 CONTAIN THE.
FILE'S DIRECTORY ENTRY, WITH.
THE FILE'S ORIGINAL NAME AND. T
IME STAMP...BLOCK 2: BYTES 0 AND 1: NTS
POINTER. BYTES 2 TO 255: BYTES 2
TO 255. OF THE FILE'S HEADER BL
OCK...WHEN CONVERTING GEOS SEQ FILES, TH
E REST OF THE BLOCKS IN THE RESULTING CO
MMODORE SEQ FILE ARE THE DATA BLOCKS FRO
M THE GEOS SEQ FILE...BLOCKS 3, 4 ETC:.
BYTES 0 AND 1: NTS POINTER.
BYTES 2 TO 255: BYTES 2 TO 255.
OF BLOCK FROM ORIGINAL GEOS.
SEQ FILE...LAST BLOCK:. BYTE 0
= 0. BYTE 1 = POINTER TO LAST BY
TE. USED IN THIS BLOCK (=$02 TO
. $FF)..WHEN CONVERTING GEOS VL
IR FILES, THE THIRD BLOCK IN THE RESULTI
NG COMMODORE SEQ FILE CONTAINS AN INDEX
TABLE FOR THE FILE:..BLOCK 3: BYTES 0 A
ND 1: NTS POINTER. BYTE 2: NUMB
ER OF BLOCKS IN. VLIR
RECORD #0. BYTE 3: NUMBER OF BY
TES IN. LAST BLOCK OF RECO
RD #0. BYTES 4,5: # BLOCKS/BYTE
S. IN RECORD #1.
...AND SO ON UNTIL:. BYTES 25
4 AND 255: NUMBER OF. BLOCKS/
BYTES FOR RECORD#126.IF ONE OF THE BLOCK
/BYTE PAIRS IS (0,0), THEN THE RECORD DO
ES NOT EXIST. IF A PAIR IS ($00,$FF) THE
N THE RECORD IS EMPTY. THE REMAINING BLO
CKS IN THE COMMODORE SEQ FILE CONTAIN AL
L OF THE VLIR RECORDS, APPENDED END-TO-E
ND, STARTING WITH THE FIRST EXISTING REC
ORD (USUALLY RECORD #0). ADDING UP ALL O
F THE "NUMBER OF BLOCKS" ENTRIES IN THE
THIRD BLOCK WILL GIVE YOU THE TOTAL NUMB
ER OF BLOCK WHICH REMAIN...THUS IF THE V
LIR FILE HAS TWO BLOCKS IN RECORD #0, ON
E BLOCK IN RECORD #4, AND NULL POINTERS
(NO BLOCKS) FOR ALL OTHER RECORDS, THEN
THE RESULTING COMMODORE SEQ FILE WILL CO
NTAIN: ..BLOCK 1: DIRECTORY ENTRY .BLOC
K 2: FILE HEADER .BLOCK 3: BLOCKS/BYTE
S PER RECORD . TABLE .BLOCK 4:
BLOCK #1 OF RECORD #0 .BLOCK 5: BLOCK
#2 OF RECORD #0 .BLOCK 6: BLOCK #1 OF R
ECORD #4..NOTE THAT THE CONVERSION PROCE
SS DOES NOT CREATE A NEW FILE, IT SIMPLY
MODIFIES THE EXISTING GEOS VLIR OR SEQ
FILE SO THAT IT CONFORMS TO THE FORMAT O
F A COMMODORE SEQ FILE. USING A GEOS VLI
R FILE AS AN EXAMPLE, THIS PROCESS INVOL
VES:..1) CREATING A NEW BLOCK TO CONTAIN
THE FILE'S DIRECTORY ENTRY, CHANGING TH
E EXISTING DIRECTORY ENTRY SO THAT THE P
OINTER TO THE FILE'S FIRST BLOCK NOW POI
NTS TO THIS NEW BLOCK. THE NTS POINTER I
N THIS NEW BLOCK WILL POINT TO THE FILE'
S EXISTING HEADER BLOCK...2) CHANGING TH
E NTS POINTER IN THE BLOCK CONTAINING TH
E FILE HEADER SO THAT IT POINTS TO THE F
ILE'S INDEX TABLE BLOCK...3) CHANGING TH
E FILE'S INDEX TABLE BLOCK SO THAT IT HA
S ACCURATE "NUMBER OF BLOCKS/BYTES" INFO
RMATION FOR EACH RECORD. ALSO, THE NTS P
OINTER IN THIS BLOCK IS ALTERED TO POINT
TO THE FIRST BLOCK OF THE FIRST RECORD
WHICH EXISTS...4) CHANGING THE NTS POINT
ERS IN THE FIRST AND LAST BLOCKS OF EACH
RECORD, SO THAT THE RECORDS ARE APPENDE
D INTO A STRING OF BLOCKS...ALSO, THINK
ABOUT THE REVERSE PROCESS. CONVERT WILL
TAKE A COMMODORE SEQ FILE WHICH COMPLETE
LY DEFINES A GEOS VLIR OR SEQ FILE AND W
ILL CONVERT IT TO THE CORRECT STRUCTURE.
SOFTWARE DEVELOPERS MAY FIND THIS USEFU
L; IF YOU ARE USING A STANDARD COMMODORE
ASSEMBLER WHICH CREATES COMMODORE SEQ F
ILES, THEN IF THE DATA IS SET UP RIGHT,
CONVERT CAN BE USED TO TURN THE COMMODOR
E SEQ FILE INTO A RUNNABLE GEOS VLIR OR
SEQ APPLICATION! WE WILL POST A NOTE IN
THE FUTURE ABOUT HOW TO DO THIS...APPEND
IX C (P432) CORRECTIONS.....THANKS FOR J
PP AND MIKET22 FOR ALERTING ME TO SOME E
RRORS ON P432 OF THE PROG REF MANUAL:..D
ONEWITHIO SHOULD READ $C25F COPYSTRING S
HOULD READ $C265..DESK ACCESSORIES IN AP
PLICATIONS..THIS NOTE IS FOR PEOPLE WRIT
ING APPLICATIONS WHICH ALLOW THE USER TO
RUN DESK ACCESSORIES...MOST GEOS APPLIC
ATIONS THAT HAVE BEEN WRITTEN ARE VLIR M
ODULE SWAPPING APPLICATIONS, AND SO THE
DISK CONTAINING THE APPLICATION MUST ALW
AYS BE IN ONE OF THE ACTIVE DRIVES. THE
CONVENTION FOR PLACEMENT OF DESK ACCESSO
RIES IS THAT THEY MUST BE ON THE APPLICA
TION DISK. THIS WAY, THE DAS WHICH APPEA
R IN THE APPLICATION'S GEOS MENU ARE ALW
AYS ACCESSIBLE. APPLICATIONS OF THIS TYP
E WHICH ALLOW THE USER TO LOAD DATA FROM
THE OTHER DRIVE MUST KEEP TRACK OF WHIC
H DRIVE IS THE APPLICATION DRIVE. FOR EX
AMPLE, ASSUME THE APPLICATION DISK IS IN
DRIVE A AND THE DATA DISK IS IN DRIVE B
. WHEN THE APPLICATION IS RUN FROM THE D
ESKTOP, ONE OF THE FIRST THINGS IT DOES
IS TO READ THE DISK'S DIRECTORY, GRABBIN
G THE NAMES OF THE DAS ON THAT DISK AND
STUFFING THEM INTO THE GEOS MENU DEFINIT
ION TABLE. THEN WHEN THE USER HAS OPENED
A DATAFILE WHICH IS ON THE DISK IN DRIV
E B, AND HE SELECTS A DA FROM THE MENU,
THE APPLICATION MUST CALL OPENDISK TO OP
EN DRIVE A TO RUN THE DA. WHEN THE DA FI
NISHES, THE APPLICATION MUST CALL OPENDI
SK TO RE-OPEN THE DATA DISK IN DRIVE B.
IF THE SYSTEM ONLY HAS ONE DRIVE, THEN T
HERE IS NO PROBLEM BECAUSE THE DISK IN D
RIVE A CONTAINS THE APPLICATION, THE DAS
, AND THE DATAFILE; NO DRIVE SWITCHING I
S REQUIRED WHEN RUNNING DAS...FOR APPLIC
ATIONS WHICH RUN ENTIRELY RESIDENT IN ME
MORY (NEVER SWAPPING MODULES) YOU MIGHT
BE TEMPTED TO ALLOW THE USER TO REMOVE T
HE DISK ON A ONE-DRIVE SYSTEM AND INSERT
A DIFFERENT DATA DISK. APPLICATIONS SUC
H AS THE ICON EDITOR ALLOW THIS. BUT BE
SURE THAT IF YOU ALLOW THIS CAPABILITY,
THAT WHEN THE DA IS SELECTED AND THE APP
LICATION DISK HAS BEEN REMOVED, YOU MUST
EITHER 1) NOT ALLOW THE DA TO RUN, OR 2
) PUT UP A DIALOG BOX REQUESTING THAT TH
E APPLICATION DISK BE INSERTED SO THAT T
HE DA CAN RUN...MACROS FOR REFERENCE MAN
UAL....YOU GUYS ARE ABSOLUTELY RIGHT! TH
E REFERENCE MANUAL DOES NOT HAVE A PAGE
DESCRIBING THE MACROS WE USE IN THE SOUR
CE LISTINGS. HERE ARE THE 5 MOST POPULAR
:..*** LOADB ***..LOADB IS USED TO STUFF
A CONSTANT VALUE INTO A SINGLE-BYTE MEM
ORY LOCATION....MACRO LOADB ADDR,VALUE.
LDA #VALUE. STA ADDR .EN
DM..SAMPLE USAGES:... LOADB R0H,#5
2. LOADB $0001,#$35. LOADB M
OUSEYPOSITION,#34..*** LOADW ***..LOADW
IS USED TO STUFF A WORD CONSTANT INTO A
WORD (TWO SEQUENTIAL BYTES) MEMORY LOCAT
ION....MACRO LOADW ADDR,VALUE. L
DA #[VALUE. STA ADDR.
LDA #]VALUE. STA ADDR+1 .ENDM
..NOTE THAT THE [ CHAR IS USED TO GET TH
E LOW BYTE VALUE OF A WORD CONSTANT, AND
] IS USED TO GET THE HIGH BYTE VALUE...
..SAMPLE USAGE: LOADW R0,#$4000..*** MO
VEB ***..MOVEB IS USED TO COPY DATA FROM
ONE MEMORY LOCATION TO ANOTHER....MACRO
MOVEB SOURCE,DEST. LDA SOURCE.
STA DEST .ENDM..SAMPLE USAGE:.
MOVEB R0H,R2H ;SET R2H=R0H..*** M
OVEW ***..SAME AS MOVEB, BUT COPIES A WO
RD....MACRO MOVEW SOURCE,DEST. LDA
SOURCE. STA DEST. LDA
SOURCE+1. STA DEST+1 .ENDM..PRG
TOGEOS (CHAPTER 3) CORRECTIONS:..SEVERAL
OF YOU HAVE NOTICED THAT THE PRGTOGEOS
UTILITY DESCRIBED IN CHAPTER 3 DOES NOT
WORK. WITH THE FOLLOWING CORRECTIONS, YO
U SHOULD HAVE NO PROBLEM WITH IT...ON PA
GE 48, REPLACE THE "PSECT 400" WITH:...P
SECT $304 ;THE FILEHEADER DOES NOT ACTUA
LLY START AT $304; THIS PSECT IS NECESSA
RY SO THAT THE FILEHEADER OCCUPIES THE F
IRST 252 BYTES OF THE PRG FILE WHICH YOU
R ASSEMBLER CREATES...THE COMMENTS BELOW
"FILEHEADER" SHOULD READ:..;THE FIRST F
OUR BYTES OF THE FILEHEADER WILL BE WRIT
TEN TO THE HEADER BLOCK BY THE PRGTOGEOS
BASIC PROGRAM DURING CONVERSION. FOR YO
UR INFORMATION, THE FIRST FOUR BYTES WIL
L CONTAIN: ..; .BYTE $00,$FF ;NULL
POINTER . ;TO NEXT
BLOCK .; .BYTE 3,21 ;ICON WIDT
H AND . ;HEIGHT..TH
EN THESE COMMENTS FOLLOW:..;THE REST OF
THE HEADER WILL END UP IN BYTES $04-$FF
OF THE FIRST BLOCK OF THE PRG FILE. WHEN
THIS FILE IS CONVERTED, THIS FIRST BLOC
K WILL BECOME THE PROGRAM'S HEADER BLOCK
, AND THE HEADER INFORMATION FROM $04 TO
$FF IN THE BLOCK WILL ALREADY BE IN THE
CORRECT PLACE...THE REST OF THE HEADER
FROM P48 FOLLOWS FROM HERE, STARTING WIT
H THE .BYTE ($80+63) LINE AND ENDING WIT
H THE .BYTE 0,0,0,0 LINE. THEN REPLACE E
VERYTHING ON THE PAGE BELOW THAT LINE WI
TH THE FOLLOWING:..;THE ASSEMBLER SHOULD
FILL ANY FREE SPACE IN HERE WITH $00'S,
UNTIL THE LOCATION COUNTER EQUALS $400.
...PSECT $400 ;THE CODE FOLLOWING THI
S PSECT WILL BE WRITTEN INTO BLOCK 2 OF
THE PRG FILE...INITCODE:. LDA #21
;HERE ARE TWO SAMPLE. STA R0L
; LINES. CHANGE THESE...;REST OF APPLICA
TION CODE GOES HERE..ENDCODE: ;THIS LA
BEL IS USE BY THE HEADER BLOCK TO STORE
THE ENDING ADDRESS OF THE APPLICATION CO
DE...THIS CONCLUDES THE CHANGES TO PAGE
48. THE ONLY OTHER NECESSARY CHANGES ARE
IN THE PRGTOGEOS BASIC PROGRAM- SEE MES
SAGE PART 2.....NOW THAT WE HAVE CORRECT
ED THE HEADER BLOCK ON PAGE 48, WE NEED
TO CHANGE SEVERAL LINES OF THE PRGTOGEOS
BASIC PROGRAM WHICH IS LISTED ON PAGES
50-52. REPLACE THE FOLLOWING LINES WITH
THE LINES LISTED BELOW:..80 INPUT "HOUR
(EX: 14)";H..180 T$=HT$:S$=HS$:GOS
UB 1000..210 FOR I=2 TO 68..310 FOR I=0
TO (32*E)+2..DELETE LINE 240 (240 GET#2,
CT$)..MAKE SURE LINE 3050 READS: 3050 FO
R I=I TO 31.....
×
C64 Image
> CLICK IMAGE PREVIEW FOR FULL MODAL