T.BITS
FILE INFORMATION
FILENAME(S): T.BITS
FILE TYPE(S): PRG
FILE SIZE: 6.7K
FIRST SEEN: 2025-11-30 18:12:09
APPEARS ON: 1 disk(s)
FILE HASH
382485a14246c1c7753cac2f17e9f7261d8b97526bd2044b6dad23ecbf4ee730
FOUND ON DISKS (1 DISKS)
| DISK TITLE | FILENAME | FILE TYPE | COLLECTION | TRACK | SECTOR | ACTIONS |
|---|---|---|---|---|---|---|
| LOADSTAR 47 S 1 | T.BITS | PRG | Sailor, Ganheden | 10 | 0 | DOWNLOAD FILE |
FILE CONTENT & ANALYSIS
00000000: 00 80 5E 55 3A 5A 45 52 4F 0D 0D 0D 20 20 C2 C9 |..^U:ZERO... ..| 00000010: D4 D3 3A 20 C3 CF CE D6 C5 D2 D4 20 C8 C5 D8 C1 |..: ....... ....| 00000020: C4 C5 C3 C9 CD C1 CC 20 D4 CF 20 C1 D3 C3 C9 C9 |....... .. .....| 00000030: 0D 0D 20 20 20 20 20 20 20 20 20 20 42 59 20 CD |.. BY .| 00000040: 41 52 54 59 20 CD 41 54 54 48 45 57 53 0D 0D 20 |ARTY .ATTHEWS.. | 00000050: 20 20 20 D4 48 45 52 45 20 49 53 20 41 20 44 4F | .HERE IS A DO| 00000060: 43 55 4D 45 4E 54 45 44 20 4B 45 52 4E 45 4C 0D |CUMENTED KERNEL.| 00000070: 52 4F 55 54 49 4E 45 20 41 54 20 24 C2 C4 C3 C4 |ROUTINE AT $....| 00000080: 20 54 48 41 54 20 49 53 20 55 53 45 44 20 42 59 | THAT IS USED BY| 00000090: 0D C2 C1 D3 C9 C3 20 54 4F 20 50 52 49 4E 54 20 |...... TO PRINT | 000000A0: 4F 55 54 20 4C 49 4E 45 20 4E 55 4D 42 45 52 53 |OUT LINE NUMBERS| 000000B0: 2E 20 20 D4 4F 0D 44 49 53 50 4C 41 59 20 41 20 |. .O.DISPLAY A | 000000C0: 4E 55 4D 42 45 52 20 4C 45 53 53 20 54 48 41 4E |NUMBER LESS THAN| 000000D0: 20 36 35 35 33 35 20 59 4F 55 0D 43 41 4E 20 55 | 65535 YOU.CAN U| 000000E0: 53 45 20 54 48 49 53 20 52 4F 55 54 49 4E 45 2E |SE THIS ROUTINE.| 000000F0: 20 20 C6 4F 52 20 54 48 45 20 C3 31 32 38 2C 0D | .OR THE .128,.| 00000100: 48 4F 57 45 56 45 52 2C 20 59 4F 55 20 4D 41 59 |HOWEVER, YOU MAY| 00000110: 20 57 41 4E 54 20 54 4F 20 53 57 49 54 43 48 20 | WANT TO SWITCH | 00000120: 4F 55 54 0D 54 48 45 20 4B 45 52 4E 41 4C 20 41 |OUT.THE KERNAL A| 00000130: 4E 44 2C 20 48 45 4E 43 45 2C 20 4C 4F 53 45 20 |ND, HENCE, LOSE | 00000140: 54 48 45 0D 41 42 49 4C 49 54 59 20 54 4F 20 55 |THE.ABILITY TO U| 00000150: 53 45 20 54 48 45 20 4B 45 52 4E 41 4C 20 52 4F |SE THE KERNAL RO| 00000160: 55 54 49 4E 45 2E 0D 0D 20 20 20 20 D7 48 41 54 |UTINE... .HAT| 00000170: 20 57 45 20 4E 45 45 44 20 49 53 20 41 20 57 41 | WE NEED IS A WA| 00000180: 59 20 54 4F 20 43 4F 4E 56 45 52 54 0D 48 45 58 |Y TO CONVERT.HEX| 00000190: 20 4E 55 4D 42 45 52 53 20 54 4F 20 54 48 45 49 | NUMBERS TO THEI| 000001A0: 52 20 C1 D3 C3 C9 C9 20 45 51 55 49 56 41 4C 45 |R ..... EQUIVALE| 000001B0: 4E 54 0D 57 49 54 48 4F 55 54 20 55 53 49 4E 47 |NT.WITHOUT USING| 000001C0: 20 54 48 45 20 4B 45 52 4E 41 4C 20 52 4F 55 54 | THE KERNAL ROUT| 000001D0: 49 4E 45 2E 0D 0D 20 20 20 20 D4 48 45 20 46 4F |INE... .HE FO| 000001E0: 4C 4C 4F 57 49 4E 47 20 54 57 4F 20 52 4F 55 54 |LLOWING TWO ROUT| 000001F0: 49 4E 45 53 2C 20 4F 4E 45 0D 54 4F 20 43 4F 4E |INES, ONE.TO CON| 00000200: 56 45 52 54 20 C8 C5 D8 20 54 4F 20 50 41 43 4B |VERT ... TO PACK| 00000210: 45 44 20 4F 52 20 41 52 49 54 48 4D 45 54 49 43 |ED OR ARITHMETIC| 00000220: 0D 44 45 43 49 4D 41 4C 2C 20 41 4E 44 20 54 48 |.DECIMAL, AND TH| 00000230: 45 20 53 45 43 4F 4E 44 20 54 4F 20 43 4F 4E 56 |E SECOND TO CONV| 00000240: 45 52 54 0D 50 41 43 4B 45 44 20 44 45 43 49 4D |ERT.PACKED DECIM| 00000250: 41 4C 20 54 4F 20 44 49 53 50 4C 41 59 20 C1 D3 |AL TO DISPLAY ..| 00000260: C3 C9 C9 2C 20 43 41 4E 0D 42 45 20 55 53 45 44 |..., CAN.BE USED| 00000270: 20 54 4F 20 43 4F 4E 56 45 52 54 20 C8 C5 D8 20 | TO CONVERT ... | 00000280: 54 4F 20 C1 D3 C3 C9 C9 0D 44 49 53 50 4C 41 59 |TO ......DISPLAY| 00000290: 2E 20 20 D4 48 49 53 20 49 53 20 44 4F 4E 45 20 |. .HIS IS DONE | 000002A0: 57 49 54 48 4F 55 54 20 54 48 45 0D 4B 45 52 4E |WITHOUT THE.KERN| 000002B0: 45 4C 2E 20 20 D4 48 45 20 43 41 4C 4C 49 4E 47 |EL. .HE CALLING| 000002C0: 20 53 45 51 55 45 4E 43 45 20 49 53 3A 0D 0D 20 | SEQUENCE IS:.. | 000002D0: 31 29 20 CC 4F 41 44 20 5B D8 5D 20 57 49 54 48 |1) .OAD [.] WITH| 000002E0: 20 54 48 45 20 CC D3 C2 20 4F 46 20 54 48 45 0D | THE ... OF THE.| 000002F0: 20 20 20 20 41 44 44 52 45 53 53 20 4F 46 20 54 | ADDRESS OF T| 00000300: 48 45 20 49 4E 50 55 54 20 46 49 45 4C 44 2E 0D |HE INPUT FIELD..| 00000310: 20 20 20 20 28 D5 53 45 20 53 54 41 4E 44 41 52 | (.SE STANDAR| 00000320: 44 20 CC D3 C2 2D CD D3 C2 20 46 4F 52 4D 41 54 |D ...-... FORMAT| 00000330: 29 0D 20 32 29 20 CC 4F 41 44 20 5B D9 5D 20 57 |). 2) .OAD [.] W| 00000340: 49 54 48 20 54 48 45 20 CD D3 C2 20 4F 46 20 54 |ITH THE ... OF T| 00000350: 48 45 0D 20 20 20 20 41 44 44 52 45 53 53 20 4F |HE. ADDRESS O| 00000360: 46 20 54 48 45 20 49 4E 50 55 54 20 46 49 45 4C |F THE INPUT FIEL| 00000370: 44 2E 0D 20 33 29 20 CA D3 D2 20 54 4F 20 C8 C5 |D.. 3) ... TO ..| 00000380: D8 C1 D3 C3 0D 20 34 29 20 D3 54 4F 52 45 20 54 |..... 4) .TORE T| 00000390: 48 45 20 52 45 54 55 52 4E 45 44 20 41 44 44 52 |HE RETURNED ADDR| 000003A0: 45 53 53 2C 20 57 48 49 43 48 0D 20 20 20 20 49 |ESS, WHICH. I| 000003B0: 53 20 54 48 45 20 41 44 44 52 45 53 53 20 4F 46 |S THE ADDRESS OF| 000003C0: 20 54 48 45 20 52 45 53 55 4C 54 41 4E 54 0D 20 | THE RESULTANT. | 000003D0: 20 20 20 C1 D3 C3 C9 C9 20 46 49 45 4C 44 2E 20 | ..... FIELD. | 000003E0: 20 D4 48 45 20 C1 D3 C3 C9 C9 20 46 49 45 4C 44 | .HE ..... FIELD| 000003F0: 20 49 53 0D 20 20 20 20 44 45 4C 49 4D 49 54 45 | IS. DELIMITE| 00000400: 44 20 57 49 54 48 20 41 20 42 49 4E 41 52 59 20 |D WITH A BINARY | 00000410: 5A 45 52 4F 2E 0D 0D 20 20 20 20 D4 48 45 20 CD |ZERO... .HE .| 00000420: CC 20 49 4E 53 54 52 55 43 54 49 4F 4E 53 20 43 |. INSTRUCTIONS C| 00000430: 4F 4E 53 49 53 54 20 4F 46 0D 54 48 52 45 45 20 |ONSIST OF.THREE | 00000440: 53 55 42 52 4F 55 54 49 4E 45 53 2E 20 20 D4 48 |SUBROUTINES. .H| 00000450: 45 59 20 41 52 45 3A 0D 0D 5B 31 5D 20 D4 C8 C5 |EY ARE:..[1] ...| 00000460: 20 C4 D2 C9 D6 C5 D2 20 20 2D 2D 0D 0D 20 20 20 | ...... --.. | 00000470: 20 20 20 CA D3 D2 20 C2 C9 CE C4 C5 C3 20 3B C4 | ... ...... ;.| 00000480: 4F 20 42 49 4E 41 52 59 2D 44 45 43 49 4D 41 4C |O BINARY-DECIMAL| 00000490: 0D 20 20 20 20 20 20 CA D3 D2 20 C4 C5 C3 C1 D3 |. ... .....| 000004A0: C3 20 3B C4 4F 20 44 45 43 49 4D 41 4C 2D C1 D3 |. ;.O DECIMAL-..| 000004B0: C3 C9 C9 0D 20 20 20 20 20 20 D2 D4 D3 20 20 20 |.... ... | 000004C0: 20 20 20 20 20 3B D2 D4 D3 20 54 4F 20 43 41 4C | ;... TO CAL| 000004D0: 4C 49 4E 47 20 50 52 4F 47 0D 0D 5B 32 5D 20 D4 |LING PROG..[2] .| 000004E0: C8 C5 20 C8 C5 D8 20 54 4F 20 C4 C5 C3 C9 CD C1 |.. ... TO ......| 000004F0: CC 20 D2 CF D5 D4 C9 CE C5 20 20 2D 2D 0D 20 20 |. ....... --. | 00000500: 20 20 52 45 51 55 49 52 45 53 20 54 48 45 20 46 | REQUIRES THE F| 00000510: 4F 4C 4C 4F 57 49 4E 47 20 43 4F 4E 53 54 41 4E |OLLOWING CONSTAN| 00000520: 54 53 0D 20 20 20 20 41 4E 44 20 53 54 4F 52 41 |TS. AND STORA| 00000530: 47 45 20 4C 4F 43 41 54 49 4F 4E 53 2E 0D 0D 20 |GE LOCATIONS... | 00000540: C2 C4 C3 D7 20 2E C2 D9 D4 C5 20 30 30 38 20 3B |.... ..... 008 ;| 00000550: C6 49 45 4C 44 20 57 49 44 54 48 20 49 4E 0D 20 |.IELD WIDTH IN. | 00000560: 20 20 20 20 20 20 42 49 54 53 20 4F 46 20 41 4E | BITS OF AN| 00000570: 20 49 4E 50 55 54 20 42 59 54 45 2E 0D 0D 20 C2 | INPUT BYTE... .| 00000580: C4 D7 CB 20 2E C2 D9 D4 C5 20 30 30 30 20 30 30 |... ..... 000 00| 00000590: 30 20 3B C6 49 45 4C 44 20 54 4F 20 57 48 49 43 |0 ;.IELD TO WHIC| 000005A0: 48 0D 20 20 20 20 20 20 20 54 48 45 20 49 4E 50 |H. THE INP| 000005B0: 55 54 20 49 53 20 4D 4F 56 45 44 2E 20 20 C6 49 |UT IS MOVED. .I| 000005C0: 45 4C 44 0D 20 20 20 20 20 20 20 49 53 20 53 41 |ELD. IS SA| 000005D0: 4D 45 20 53 49 5A 45 20 41 53 20 49 4E 50 55 54 |ME SIZE AS INPUT| 000005E0: 20 46 49 45 4C 44 2E 0D 20 C2 C4 D2 D3 CC D4 20 | FIELD.. ...... | 000005F0: 2E C2 D9 D4 C5 20 30 30 30 20 30 30 30 20 30 30 |..... 000 000 00| 00000600: 30 20 3B D2 45 53 55 4C 54 0D 20 20 20 20 20 20 |0 ;.ESULT. | 00000610: 20 4F 46 20 C8 C5 D8 20 54 4F 20 C4 C5 C3 20 43 | OF ... TO ... C| 00000620: 4F 4E 56 45 52 53 49 4F 4E 2E 0D 20 20 20 20 20 |ONVERSION.. | 00000630: 20 20 C6 49 45 4C 44 20 4D 55 53 54 20 41 43 43 | .IELD MUST ACC| 00000640: 4F 4D 4F 44 41 54 45 20 54 48 45 0D 20 20 20 20 |OMODATE THE. | 00000650: 20 20 20 4E 55 4D 42 45 52 20 4F 46 20 44 45 43 | NUMBER OF DEC| 00000660: 49 4D 41 4C 20 44 49 47 49 54 53 0D 20 20 20 20 |IMAL DIGITS. | 00000670: 20 20 20 50 52 4F 44 55 43 45 44 20 42 59 20 54 | PRODUCED BY T| 00000680: 48 45 20 43 4F 4E 56 45 52 53 49 4F 4E 2E 0D 20 |HE CONVERSION.. | 00000690: 20 20 20 20 20 20 D0 41 43 4B 45 44 20 44 45 43 | .ACKED DEC| 000006A0: 49 4D 41 4C 20 4F 52 20 54 57 4F 0D 20 20 20 20 |IMAL OR TWO. | 000006B0: 20 20 20 43 48 41 52 41 43 54 45 52 53 20 50 45 | CHARACTERS PE| 000006C0: 52 20 42 59 54 45 2E 0D 0D 20 C2 C4 C9 CE 20 2E |R BYTE... .... .| 000006D0: C2 D9 D4 C5 20 30 30 32 20 3B CE 55 4D 42 45 52 |.... 002 ;.UMBER| 000006E0: 20 4F 46 20 42 59 54 45 53 0D 20 20 20 20 20 20 | OF BYTES. | 000006F0: 20 4F 46 20 49 4E 50 55 54 20 44 41 54 41 2E 20 | OF INPUT DATA. | 00000700: 28 D3 45 45 20 C2 C4 D7 CB 29 0D 0D 20 C2 C4 CF |(.EE ....).. ...| 00000710: D5 D4 20 2E C2 D9 D4 C5 20 30 30 33 20 3B CE 55 |.. ..... 003 ;.U| 00000720: 4D 42 45 52 20 4F 46 20 4F 55 54 50 55 54 0D 20 |MBER OF OUTPUT. | 00000730: 20 20 20 20 20 20 42 59 54 45 53 2E 20 28 C2 C4 | BYTES. (..| 00000740: D2 D3 CC D4 20 42 59 54 45 53 29 0D 0D 20 C4 CC |.... BYTES).. ..| 00000750: CF D0 32 20 2E C2 D9 D4 C5 20 30 30 30 20 3B CC |..2 ..... 000 ;.| 00000760: 4F 4F 50 20 43 4F 4E 54 52 4F 4C 0D 20 20 20 20 |OOP CONTROL. | 00000770: 20 20 20 CE 55 4D 42 45 52 20 4F 46 20 42 49 54 | .UMBER OF BIT| 00000780: 53 20 54 4F 20 41 20 42 59 54 45 2E 0D 0D 20 C2 |S TO A BYTE... .| 00000790: C4 CE D7 20 2E C2 D9 D4 C5 20 30 30 30 20 3B 20 |... ..... 000 ; | 000007A0: D4 45 4D 50 4F 52 41 52 59 20 53 54 4F 52 41 47 |.EMPORARY STORAG| 000007B0: 45 0D 20 20 20 20 20 20 20 46 4F 52 20 43 55 52 |E. FOR CUR| 000007C0: 52 45 4E 54 20 42 59 54 45 2E 0D 20 20 20 20 D4 |RENT BYTE.. .| 000007D0: 48 45 20 C8 C5 D8 20 54 4F 20 C4 45 43 49 4D 41 |HE ... TO .ECIMA| 000007E0: 4C 20 52 4F 55 54 49 4E 45 20 42 45 47 49 4E 53 |L ROUTINE BEGINS| 000007F0: 0D 42 59 20 4D 4F 56 49 4E 47 20 54 48 45 20 49 |.BY MOVING THE I| 00000800: 4E 50 55 54 20 46 49 45 4C 44 20 54 4F 20 54 48 |NPUT FIELD TO TH| 00000810: 45 20 C2 C4 D7 CB 0D 46 49 45 4C 44 20 57 49 54 |E .....FIELD WIT| 00000820: 48 49 4E 20 54 48 49 53 20 52 4F 55 54 49 4E 45 |HIN THIS ROUTINE| 00000830: 2E 20 20 D4 48 49 53 20 49 53 0D 44 4F 4E 45 20 |. .HIS IS.DONE | 00000840: 42 59 20 53 54 4F 52 49 4E 47 20 54 48 45 20 41 |BY STORING THE A| 00000850: 44 44 52 45 53 53 20 4F 46 20 54 48 45 0D 49 4E |DDRESS OF THE.IN| 00000860: 50 55 54 20 46 49 45 4C 44 20 28 D8 20 41 4E 44 |PUT FIELD (. AND| 00000870: 20 D9 20 52 45 47 49 53 54 45 52 53 29 20 49 4E | . REGISTERS) IN| 00000880: 54 4F 0D 54 48 45 20 4D 4F 56 45 20 49 4E 53 54 |TO.THE MOVE INST| 00000890: 52 55 43 54 49 4F 4E 20 53 45 54 2E 0D 0D 20 C2 |RUCTION SET... .| 000008A0: C9 CE C4 C5 C3 20 D3 D4 D8 20 C2 C4 30 31 30 2B |..... ... ..010+| 000008B0: 32 20 3B CD 4F 56 45 20 49 4E 20 41 44 44 52 45 |2 ;.OVE IN ADDRE| 000008C0: 53 53 0D 20 20 20 20 20 20 20 20 D3 D4 D9 20 C2 |SS. ... .| 000008D0: C4 30 31 30 2B 33 0D 20 20 20 20 20 20 20 20 CC |.010+3. .| 000008E0: C4 D8 20 C2 C4 C9 CE 20 20 20 20 3B D3 45 54 20 |.. .... ;.ET | 000008F0: 4E 55 4D 42 45 52 20 42 59 54 45 53 0D 20 C2 C4 |NUMBER BYTES. ..| 00000900: 30 31 30 20 20 C4 C5 D8 20 20 20 20 20 20 20 20 |010 ... | 00000910: 20 3B 20 4D 4F 56 45 20 4C 4F 4F 50 0D 20 20 20 | ; MOVE LOOP. | 00000920: 20 20 20 20 20 CC C4 C1 20 C2 C4 30 31 30 2C D8 | ... ..010,.| 00000930: 0D 20 20 20 20 20 20 20 20 D3 D4 C1 20 C2 C4 D7 |. ... ...| 00000940: CB 2C D8 0D 20 20 20 20 20 20 20 20 D4 D8 C1 20 |.,.. ... | 00000950: 20 20 20 20 20 20 20 20 3B D3 45 54 20 5A 45 52 | ;.ET ZER| 00000960: 4F 20 46 4C 41 47 0D 20 20 20 20 20 20 20 20 C2 |O FLAG. .| 00000970: CE C5 20 C2 C4 30 31 30 20 20 20 3B CC 4F 4F 50 |.. ..010 ;.OOP| 00000980: 20 49 46 20 4E 4F 54 20 5A 45 52 4F 0D 0D 0D 0D | IF NOT ZERO....| 00000990: 0D 20 20 20 20 DA 45 52 4F 20 54 48 45 20 4F 55 |. .ERO THE OU| 000009A0: 54 50 55 54 20 4F 52 20 52 45 53 55 4C 54 20 46 |TPUT OR RESULT F| 000009B0: 49 45 4C 44 53 2E 0D 0D 20 20 20 20 20 20 20 20 |IELDS... | 000009C0: CC C4 D8 20 C2 C4 CF D5 D4 20 20 20 3B D3 45 54 |... ..... ;.ET| 000009D0: 20 4F 55 54 50 55 54 20 53 49 5A 45 0D 20 C2 C4 | OUTPUT SIZE. ..| 000009E0: 30 31 31 20 20 C4 C5 D8 0D 20 20 20 20 20 20 20 |011 .... | 000009F0: 20 CC C4 C1 20 23 30 0D 20 20 20 20 20 20 20 20 | ... #0. | 00000A00: D3 D4 C1 20 C2 C4 D2 D3 CC D4 2C D8 0D 20 20 20 |... ......,.. | 00000A10: 20 20 20 20 20 D4 D8 C1 20 20 20 20 20 20 20 20 | ... | 00000A20: 20 3B D3 45 54 20 46 4C 41 47 53 0D 20 20 20 20 | ;.ET FLAGS. | 00000A30: 20 20 20 20 C2 CE C5 20 C2 C4 30 31 31 20 20 20 | ... ..011 | 00000A40: 3B CC 4F 4F 50 20 49 46 20 4E 4F 54 20 5A 45 52 |;.OOP IF NOT ZER| 00000A50: 4F 0D 0D 20 20 20 20 D3 45 54 20 54 48 45 20 4D |O.. .ET THE M| 00000A60: 41 4A 4F 52 20 4C 4F 4F 50 20 46 4F 52 20 54 48 |AJOR LOOP FOR TH| 00000A70: 45 20 4E 55 4D 42 45 52 0D 4F 46 20 49 4E 50 55 |E NUMBER.OF INPU| 00000A80: 54 20 42 59 54 45 53 2E 0D 0D 20 20 20 20 20 20 |T BYTES... | 00000A90: 20 20 CC C4 D9 20 C2 C4 C9 CE 0D 20 20 20 20 20 | ... ..... | 00000AA0: 20 20 20 C4 C5 D9 0D 0D 0D 0D 0D 0D 20 20 20 20 | ......... | 00000AB0: D3 45 54 20 54 48 45 20 4D 49 4E 4F 52 20 4C 4F |.ET THE MINOR LO| 00000AC0: 4F 50 20 46 4F 52 20 54 48 45 20 4E 55 4D 42 45 |OP FOR THE NUMBE| 00000AD0: 52 0D 4F 46 20 42 49 54 53 20 50 45 52 20 42 59 |R.OF BITS PER BY| 00000AE0: 54 45 20 4F 52 20 43 48 41 52 41 43 54 45 52 20 |TE OR CHARACTER | 00000AF0: 57 49 44 54 48 2E 0D 0D 20 20 20 20 20 20 20 20 |WIDTH... | 00000B00: CC C4 C1 20 C2 C4 C3 D7 0D 20 20 20 20 20 20 20 |... ..... | 00000B10: 20 D3 D4 C1 20 C2 C4 CC CF D0 32 0D 0D 20 20 20 | ... .....2.. | 00000B20: 20 C2 C4 30 30 33 20 49 53 20 54 48 45 20 53 54 | ..003 IS THE ST| 00000B30: 41 52 54 20 4F 46 20 54 48 45 20 4D 41 4A 4F 52 |ART OF THE MAJOR| 00000B40: 0D 4C 4F 4F 50 2E 20 20 D4 48 45 20 49 4E 50 55 |.LOOP. .HE INPU| 00000B50: 54 20 46 49 45 4C 44 20 49 53 20 45 58 41 4D 49 |T FIELD IS EXAMI| 00000B60: 4E 45 44 0D 42 45 47 49 4E 4E 49 4E 47 20 57 49 |NED.BEGINNING WI| 00000B70: 54 48 20 54 48 45 20 CD D3 C2 2E 20 20 C5 41 43 |TH THE .... .AC| 00000B80: 48 20 42 59 54 45 20 4F 46 0D 54 48 45 20 49 4E |H BYTE OF.THE IN| 00000B90: 50 55 54 20 46 49 45 4C 44 20 49 53 20 45 58 41 |PUT FIELD IS EXA| 00000BA0: 4D 49 4E 45 44 20 42 49 54 20 42 59 0D 42 49 54 |MINED BIT BY.BIT| 00000BB0: 20 53 54 41 52 54 49 4E 47 20 57 49 54 48 20 48 | STARTING WITH H| 00000BC0: 49 47 48 20 4F 52 44 45 52 20 42 49 54 2E 0D 0D |IGH ORDER BIT...| 00000BD0: 20 20 20 20 CF 4E 45 20 49 53 20 41 44 44 45 44 | .NE IS ADDED| 00000BE0: 20 54 4F 20 54 48 45 20 4F 55 54 50 55 54 20 46 | TO THE OUTPUT F| 00000BF0: 49 45 4C 44 0D 46 4F 52 20 45 41 43 48 20 4F 4E |IELD.FOR EACH ON| 00000C00: 45 20 42 49 54 20 49 4E 20 54 48 45 20 42 49 54 |E BIT IN THE BIT| 00000C10: 20 53 54 52 45 41 4D 2E 0D C5 41 43 48 20 53 48 | STREAM...ACH SH| 00000C20: 49 46 54 20 4F 46 20 42 49 54 53 20 49 4E 20 54 |IFT OF BITS IN T| 00000C30: 48 45 20 49 4E 50 55 54 20 46 49 45 4C 44 0D 43 |HE INPUT FIELD.C| 00000C40: 41 55 53 45 53 20 54 48 45 20 52 45 53 55 4C 54 |AUSES THE RESULT| 00000C50: 20 46 49 45 4C 44 20 54 4F 20 42 45 0D 4D 55 4C | FIELD TO BE.MUL| 00000C60: 54 49 50 4C 49 45 44 20 42 59 20 32 2E 0D 0D 0D |TIPLIED BY 2....| 00000C70: 20 20 20 20 C5 58 41 4D 49 4E 45 20 54 48 45 20 | .XAMINE THE | 00000C80: 48 49 47 48 20 42 49 54 20 4F 46 20 54 48 45 0D |HIGH BIT OF THE.| 00000C90: 43 55 52 52 45 4E 54 20 42 59 54 45 20 42 59 20 |CURRENT BYTE BY | 00000CA0: 53 48 49 46 54 49 4E 47 20 54 48 45 20 42 49 54 |SHIFTING THE BIT| 00000CB0: 20 49 4E 54 4F 0D 54 48 45 20 43 41 52 52 59 2E | INTO.THE CARRY.| 00000CC0: 20 20 D4 48 45 20 43 41 52 52 59 20 49 53 20 54 | .HE CARRY IS T| 00000CD0: 48 45 4E 20 41 44 44 45 44 20 54 4F 0D 54 48 45 |HEN ADDED TO.THE| 00000CE0: 20 52 45 53 55 4C 54 2E 0D 0D 20 C2 C4 30 30 33 | RESULT... ..003| 00000CF0: 20 CC C4 C1 20 C2 C4 D7 CB 2C D9 20 3B CC 4F 41 | ... ....,. ;.OA| 00000D00: 44 20 43 55 52 52 45 4E 54 20 42 59 54 45 0D 20 |D CURRENT BYTE. | 00000D10: 20 20 20 20 20 20 C1 D3 CC 20 20 20 20 20 20 20 | ... | 00000D20: 20 3B 20 53 48 49 46 54 20 53 45 54 20 43 41 52 | ; SHIFT SET CAR| 00000D30: 52 59 0D 20 20 20 20 20 20 20 D3 D4 C1 20 C2 C4 |RY. ... ..| 00000D40: D7 CB 2C D9 20 3B D3 54 4F 52 45 20 43 55 52 52 |..,. ;.TORE CURR| 00000D50: 45 4E 54 20 42 59 54 45 0D 20 20 20 20 20 20 20 |ENT BYTE. | 00000D60: D3 C5 C4 20 20 20 20 20 20 20 20 3B D3 45 54 20 |... ;.ET | 00000D70: 44 45 43 49 4D 41 4C 0D 20 20 20 20 20 20 20 CC |DECIMAL. .| 00000D80: C4 C1 20 23 30 0D 20 20 20 20 20 20 20 C1 C4 C3 |.. #0. ...| 00000D90: 20 C2 C4 D2 D3 CC D4 0D 20 20 20 20 20 20 20 D3 | ....... .| 00000DA0: D4 C1 20 C2 C4 D2 D3 CC D4 0D 20 20 20 20 20 20 |.. ....... | 00000DB0: 20 CC C4 C1 20 23 30 0D 20 20 20 20 20 20 20 C1 | ... #0. .| 00000DC0: C4 C3 20 C2 C4 D2 D3 CC D4 2B 31 0D 20 20 20 20 |.. ......+1. | 00000DD0: 20 20 20 D3 D4 C1 20 C2 C4 D2 D3 CC D4 2B 31 0D | ... ......+1.| 00000DE0: 20 20 20 20 20 20 20 CC C4 C1 20 23 30 0D 20 20 | ... #0. | 00000DF0: 20 20 20 20 20 C1 C4 C3 20 C2 C4 D2 D3 CC D4 2B | ... ......+| 00000E00: 32 0D 20 20 20 20 20 20 20 D3 D4 C1 20 C2 C4 D2 |2. ... ...| 00000E10: D3 CC D4 2B 32 0D 0D 20 20 20 20 20 20 20 C3 CC |...+2.. ..| 00000E20: C4 20 20 20 20 20 20 20 20 20 3B C3 4C 45 41 52 |. ;.LEAR| 00000E30: 20 44 45 43 49 4D 41 4C 0D 20 20 20 20 20 20 20 | DECIMAL. | 00000E40: C4 C5 C3 20 C2 C4 CC CF D0 32 20 20 3B C4 45 43 |... .....2 ;.EC| 00000E50: 52 45 4D 45 4E 54 20 4D 49 4E 4F 52 0D 20 20 20 |REMENT MINOR. | 00000E60: 20 20 20 20 C2 C5 D1 20 C2 C4 30 30 35 20 20 20 | ... ..005 | 00000E70: 3B 20 4C 4F 4F 50 3A 20 C2 52 41 4E 43 48 0D 20 |; LOOP: .RANCH. | 00000E80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | | 00000E90: 20 20 3B 20 57 48 45 4E 20 5A 45 52 4F 0D 0D 20 | ; WHEN ZERO.. | 00000EA0: 20 20 20 C1 46 54 45 52 20 41 44 44 49 4E 47 20 | .FTER ADDING | 00000EB0: 54 48 45 20 43 55 52 52 45 4E 54 20 42 49 54 2C |THE CURRENT BIT,| 00000EC0: 20 49 46 0D 54 48 45 20 4E 55 4D 42 45 52 20 49 | IF.THE NUMBER I| 00000ED0: 53 20 4E 4F 54 20 45 58 48 41 55 53 54 45 44 2C |S NOT EXHAUSTED,| 00000EE0: 20 54 48 45 0D 52 45 53 55 4C 54 20 46 49 45 4C | THE.RESULT FIEL| 00000EF0: 44 20 49 53 20 4D 55 4C 54 49 50 4C 49 45 44 20 |D IS MULTIPLIED | 00000F00: 42 59 20 54 57 4F 2E 20 20 C9 4E 0D 54 48 49 53 |BY TWO. .N.THIS| 00000F10: 20 43 41 53 45 2C 20 41 44 44 45 44 20 54 4F 20 | CASE, ADDED TO | 00000F20: 49 54 53 45 4C 46 2E 0D 0D 20 C2 C4 30 30 37 20 |ITSELF... ..007 | 00000F30: D3 C5 C4 20 20 20 20 20 20 20 20 20 3B D3 45 54 |... ;.ET| 00000F40: 20 44 45 43 49 4D 41 4C 0D 20 20 20 20 20 20 20 | DECIMAL. | 00000F50: C3 CC C3 0D 20 20 20 20 20 20 20 CC C4 C1 20 C2 |.... ... .| 00000F60: C4 D2 D3 CC D4 0D 20 20 20 20 20 20 20 C1 C4 C3 |...... ...| 00000F70: 20 C2 C4 D2 D3 CC D4 0D 20 20 20 20 20 20 20 D3 | ....... .| 00000F80: D4 C1 20 C2 C4 D2 D3 CC D4 0D 20 20 20 20 20 20 |.. ....... | 00000F90: 20 CC C4 C1 20 C2 C4 D2 D3 CC D4 2B 31 0D 20 20 | ... ......+1. | 00000FA0: 20 20 20 20 20 C1 C4 C3 20 C2 C4 D2 D3 CC D4 2B | ... ......+| 00000FB0: 31 0D 20 20 20 20 20 20 20 D3 D4 C1 20 C2 C4 D2 |1. ... ...| 00000FC0: D3 CC D4 2B 31 0D 0D 20 20 20 20 20 20 20 CC C4 |...+1.. ..| 00000FD0: C1 20 C2 C4 D2 D3 CC D4 2B 32 0D 20 20 20 20 20 |. ......+2. | 00000FE0: 20 20 C1 C4 C3 20 C2 C4 D2 D3 CC D4 2B 32 0D 20 | ... ......+2. | 00000FF0: 20 20 20 20 20 20 D3 D4 C1 20 C2 C4 D2 D3 CC D4 | ... ......| 00001000: 2B 32 0D 20 20 20 20 20 20 20 C3 CC C4 0D 20 20 |+2. .... | 00001010: 20 20 20 20 20 CA CD D0 20 C2 C4 30 30 33 20 20 | ... ..003 | 00001020: 20 3B D2 45 54 55 52 4E 20 54 4F 20 53 54 41 52 | ;.ETURN TO STAR| 00001030: 54 0D 20 20 20 20 20 20 20 20 20 20 20 20 20 20 |T. | 00001040: 20 20 20 20 20 3B 20 4F 46 20 4D 41 49 4E 20 4C | ; OF MAIN L| 00001050: 4F 4F 50 0D 0D 20 20 20 20 D7 48 45 4E 20 45 41 |OOP.. .HEN EA| 00001060: 43 48 20 49 54 45 52 41 54 49 4F 4E 20 4F 46 20 |CH ITERATION OF | 00001070: 54 48 45 20 4D 49 4E 4F 52 0D 4C 4F 4F 50 20 49 |THE MINOR.LOOP I| 00001080: 53 20 43 4F 4D 50 4C 45 54 45 2C 20 54 48 45 20 |S COMPLETE, THE | 00001090: 52 4F 55 54 49 4E 45 20 42 52 41 4E 43 48 45 53 |ROUTINE BRANCHES| 000010A0: 0D 48 45 52 45 20 54 4F 20 44 45 43 52 45 4D 45 |.HERE TO DECREME| 000010B0: 4E 54 20 54 48 45 20 4D 41 4A 4F 52 20 4C 4F 4F |NT THE MAJOR LOO| 000010C0: 50 2E 20 20 C9 46 0D 54 48 45 20 4D 41 4A 4F 52 |P. .F.THE MAJOR| 000010D0: 20 4C 4F 4F 50 20 49 53 20 4E 4F 54 20 45 58 48 | LOOP IS NOT EXH| 000010E0: 41 55 53 54 45 44 2C 20 54 48 45 0D 4D 49 4E 4F |AUSTED, THE.MINO| 000010F0: 52 20 4C 4F 4F 50 20 49 53 20 52 45 53 45 54 20 |R LOOP IS RESET | 00001100: 41 4E 44 20 54 48 45 20 52 4F 55 54 49 4E 45 0D |AND THE ROUTINE.| 00001110: 43 4F 4E 54 49 4E 55 45 53 20 46 52 4F 4D 20 C2 |CONTINUES FROM .| 00001120: C4 30 30 37 2C 20 54 48 45 20 53 45 43 4F 4E 44 |.007, THE SECOND| 00001130: 20 50 41 52 54 0D 4F 46 20 54 48 45 20 4D 41 49 | PART.OF THE MAI| 00001140: 4E 20 4C 4F 4F 50 2E 0D 0D 20 C2 C4 30 30 35 20 |N LOOP... ..005 | 00001150: D4 D9 C1 20 20 20 20 20 20 20 20 20 3B C2 52 41 |... ;.RA| 00001160: 4E 43 48 20 4F 4E 20 5A 45 52 4F 0D 20 20 20 20 |NCH ON ZERO. | 00001170: 20 20 20 C2 C5 D1 20 C2 C4 30 30 36 20 20 20 3B | ... ..006 ;| 00001180: 20 54 4F 20 45 58 49 54 0D 20 20 20 20 20 20 20 | TO EXIT. | 00001190: C4 C5 D9 20 20 20 20 20 20 20 20 20 3B C4 45 43 |... ;.EC| 000011A0: 52 45 4D 45 4E 54 20 4C 4F 4F 50 0D 0D 20 20 20 |REMENT LOOP.. | 000011B0: 20 20 20 20 CC C4 C1 20 C2 C4 C3 D7 20 20 20 20 | ... .... | 000011C0: 3B D2 45 53 45 54 20 4D 49 4E 4F 52 20 4C 4F 4F |;.ESET MINOR LOO| 000011D0: 50 0D 20 20 20 20 20 20 20 D3 D4 C1 20 C2 C4 CC |P. ... ...| 000011E0: CF D0 32 0D 20 20 20 20 20 20 20 CA CD D0 20 C2 |..2. ... .| 000011F0: C4 30 30 37 0D 0D 20 20 20 20 D7 48 45 4E 20 42 |.007.. .HEN B| 00001200: 4F 54 48 20 4C 4F 4F 50 53 20 41 52 45 20 45 58 |OTH LOOPS ARE EX| 00001210: 48 41 55 53 54 45 44 2C 20 54 48 45 0D 41 44 44 |HAUSTED, THE.ADD| 00001220: 52 45 53 53 20 4F 46 20 54 48 45 20 52 45 53 55 |RESS OF THE RESU| 00001230: 4C 54 20 49 53 20 50 4C 41 43 45 44 20 49 4E 20 |LT IS PLACED IN | 00001240: 54 48 45 0D D8 20 41 4E 44 20 D9 20 52 45 47 49 |THE.. AND . REGI| 00001250: 53 54 45 52 53 2C 20 41 4E 44 20 54 48 45 20 4E |STERS, AND THE N| 00001260: 55 4D 42 45 52 20 4F 46 0D 52 45 53 55 4C 54 20 |UMBER OF.RESULT | 00001270: 42 59 54 45 53 20 49 4E 20 54 48 45 20 C1 20 52 |BYTES IN THE . R| 00001280: 45 47 49 53 54 45 52 2E 20 20 D4 48 45 0D 52 4F |EGISTER. .HE.RO| 00001290: 55 54 49 4E 45 20 54 48 45 4E 20 45 58 49 54 53 |UTINE THEN EXITS| 000012A0: 20 54 48 52 4F 55 47 48 20 41 4E 20 D2 D4 D3 2E | THROUGH AN ....| 000012B0: 0D 0D 20 C2 C4 30 30 36 20 CC C4 D8 20 23 3C C2 |.. ..006 ... #<.| 000012C0: C4 D2 D3 CC D4 0D 20 20 20 20 20 20 20 CC C4 D9 |...... ...| 000012D0: 20 23 3E C2 C4 D2 D3 CC D4 0D 20 20 20 20 20 20 | #>....... | 000012E0: 20 CC C4 C1 20 C2 C4 CF D5 D4 0D 20 20 20 20 20 | ... ...... | 000012F0: 20 20 D2 D4 D3 0D 0D 0D 0D 0D 0D 5B 33 5D 20 D4 | .........[3] .| 00001300: C8 C5 20 C4 C5 C3 C9 CD C1 CC 20 54 4F 20 C1 D3 |.. ....... TO ..| 00001310: C3 C9 C9 20 D2 CF D5 D4 C9 CE C5 20 2D 2D 0D D4 |... ....... --..| 00001320: 48 45 20 44 45 43 49 4D 41 4C 20 54 4F 20 C1 D3 |HE DECIMAL TO ..| 00001330: C3 C9 C9 20 52 4F 55 54 49 4E 45 20 43 4F 4E 56 |... ROUTINE CONV| 00001340: 45 52 54 53 0D 50 41 43 4B 45 44 20 44 45 43 49 |ERTS.PACKED DECI| 00001350: 4D 41 4C 20 49 4E 54 4F 20 44 49 53 50 4C 41 59 |MAL INTO DISPLAY| 00001360: 41 42 4C 45 20 C1 D3 C3 C9 C9 0D 4E 55 4D 42 45 |ABLE ......NUMBE| 00001370: 52 53 2E 20 20 D4 48 45 20 52 4F 55 54 49 4E 45 |RS. .HE ROUTINE| 00001380: 20 49 4E 50 55 54 20 49 53 20 54 48 45 0D 41 44 | INPUT IS THE.AD| 00001390: 44 52 45 53 53 20 4F 46 20 54 48 45 20 49 4E 50 |DRESS OF THE INP| 000013A0: 55 54 20 46 49 45 4C 44 20 49 4E 20 5B D8 5D 20 |UT FIELD IN [.] | 000013B0: 41 4E 44 0D 5B D9 5D 2C 20 41 4E 44 20 54 48 45 |AND.[.], AND THE| 000013C0: 20 4E 55 4D 42 45 52 20 4F 46 20 49 4E 50 55 54 | NUMBER OF INPUT| 000013D0: 20 42 59 54 45 53 20 49 4E 0D 5B C1 5D 2E 20 20 | BYTES IN.[.]. | 000013E0: D4 48 45 20 52 4F 55 54 49 4E 45 20 53 54 4F 52 |.HE ROUTINE STOR| 000013F0: 45 53 20 54 48 45 20 41 44 44 52 45 53 53 0D 49 |ES THE ADDRESS.I| 00001400: 4E 54 4F 20 54 48 45 20 4D 4F 56 45 20 49 4E 53 |NTO THE MOVE INS| 00001410: 54 52 55 43 54 49 4F 4E 20 53 45 51 55 45 4E 43 |TRUCTION SEQUENC| 00001420: 45 20 41 4E 44 0D 54 52 41 4E 53 46 45 52 53 20 |E AND.TRANSFERS | 00001430: 5B C1 5D 20 28 4E 55 4D 42 45 52 20 4F 46 20 49 |[.] (NUMBER OF I| 00001440: 4E 50 55 54 20 42 59 54 45 53 29 0D 54 4F 20 5B |NPUT BYTES).TO [| 00001450: D9 5D 2E 20 20 5B D9 5D 20 49 53 20 41 20 4C 4F |.]. [.] IS A LO| 00001460: 4F 50 20 43 4F 4E 54 52 4F 4C 0D 56 41 52 49 41 |OP CONTROL.VARIA| 00001470: 42 4C 45 2E 20 20 D4 48 45 20 4F 55 54 50 55 54 |BLE. .HE OUTPUT| 00001480: 20 4F 46 20 54 48 49 53 20 52 4F 55 54 49 4E 45 | OF THIS ROUTINE| 00001490: 0D 49 53 20 50 4C 41 43 45 44 20 49 4E 54 4F 20 |.IS PLACED INTO | 000014A0: 54 48 45 20 C4 C1 C2 D5 C6 20 46 49 45 4C 44 20 |THE ..... FIELD | 000014B0: 57 48 4F 53 45 0D 41 44 44 52 45 53 53 20 49 53 |WHOSE.ADDRESS IS| 000014C0: 20 52 45 54 55 52 4E 45 44 20 54 4F 20 54 48 45 | RETURNED TO THE| 000014D0: 20 43 41 4C 4C 49 4E 47 0D 50 52 4F 47 52 41 4D | CALLING.PROGRAM| 000014E0: 20 49 4E 20 5B D8 5D 20 41 4E 44 20 5B D9 5D 2E | IN [.] AND [.].| 000014F0: 20 D4 48 45 20 4F 55 54 50 55 54 20 49 53 0D 44 | .HE OUTPUT IS.D| 00001500: 45 4C 49 4D 49 54 45 44 20 57 49 54 48 20 41 20 |ELIMITED WITH A | 00001510: 52 49 47 48 54 4D 4F 53 54 20 42 49 4E 41 52 59 |RIGHTMOST BINARY| 00001520: 0D 5A 45 52 4F 2E 0D 0D 0D 0D 20 20 20 20 D4 48 |.ZERO..... .H| 00001530: 45 20 44 45 43 49 4D 41 4C 20 54 4F 20 C1 D3 C3 |E DECIMAL TO ...| 00001540: C9 C9 20 43 4F 4E 56 45 52 54 45 52 0D 55 53 45 |.. CONVERTER.USE| 00001550: 53 20 4F 4E 4C 59 20 4F 4E 45 20 46 49 45 4C 44 |S ONLY ONE FIELD| 00001560: 20 57 48 49 43 48 20 49 53 20 54 48 45 20 46 49 | WHICH IS THE FI| 00001570: 45 4C 44 0D 54 4F 20 53 54 4F 52 45 20 54 48 45 |ELD.TO STORE THE| 00001580: 20 4F 55 54 50 55 54 20 4F 52 20 43 4F 4E 56 45 | OUTPUT OR CONVE| 00001590: 52 54 45 44 20 C1 D3 C3 C9 C9 0D 43 48 41 52 41 |RTED ......CHARA| 000015A0: 43 54 45 52 53 2E 0D 0D 20 C4 C1 C2 D5 C6 20 2E |CTERS... ..... .| 000015B0: C2 D9 D4 C5 20 30 33 32 20 30 33 32 20 30 33 32 |.... 032 032 032| 000015C0: 20 30 33 32 20 30 33 32 20 30 33 32 0D 20 20 20 | 032 032 032. | 000015D0: 20 20 20 20 20 20 20 20 20 20 20 30 30 30 0D 20 | 000. | 000015E0: 20 20 20 D4 48 45 20 CD CC 20 49 53 3A 0D 0D 20 | .HE .. IS:.. | 000015F0: C4 C5 C3 C1 D3 C3 20 D3 D4 D8 20 C4 C1 CE D8 D4 |...... ... .....| 00001600: 2B 31 20 3B D3 54 4F 52 45 20 41 44 44 52 45 53 |+1 ;.TORE ADDRES| 00001610: 53 0D 20 20 20 20 20 20 20 20 D3 D4 D9 20 C4 C1 |S. ... ..| 00001620: CE D8 D4 2B 32 0D 20 20 20 20 20 20 20 20 D4 C1 |...+2. ..| 00001630: D9 20 20 20 20 20 20 20 20 20 3B D3 48 49 46 54 |. ;.HIFT| 00001640: 20 54 4F 20 D9 0D 20 C4 C1 CC CF CF D0 20 C4 C5 | TO .. ...... ..| 00001650: D9 20 20 20 20 20 20 20 20 20 3B D3 54 41 52 54 |. ;.TART| 00001660: 20 4D 41 49 4E 20 4C 4F 4F 50 0D 20 20 20 20 20 | MAIN LOOP. | 00001670: 20 20 20 CA D3 D2 20 C4 C1 CE D8 D4 20 20 20 3B | ... ..... ;| 00001680: C7 45 54 20 49 4E 50 55 54 20 43 48 41 52 0D 20 |.ET INPUT CHAR. | 00001690: 20 20 20 20 20 20 20 CC D3 D2 20 20 20 20 20 20 | ... | 000016A0: 20 20 20 3B D3 48 49 46 54 20 48 49 47 48 20 4F | ;.HIFT HIGH O| 000016B0: 52 44 45 52 0D 20 20 20 20 20 20 20 20 CC D3 D2 |RDER. ...| 000016C0: 20 20 20 20 20 20 20 20 20 3B 20 46 4F 55 52 20 | ; FOUR | 000016D0: 42 49 54 53 20 54 4F 0D 20 20 20 20 20 20 20 20 |BITS TO. | 000016E0: CC D3 D2 20 20 20 20 20 20 20 20 20 3B 20 4C 4F |... ; LO| 000016F0: 57 20 4F 52 44 45 52 0D 20 20 20 20 20 20 20 20 |W ORDER. | 00001700: CC D3 D2 0D 20 20 20 20 20 20 20 20 CF D2 C1 20 |.... ... | 00001710: 23 34 38 20 20 20 20 20 3B D0 55 54 20 5A 4F 4E |#48 ;.UT ZON| 00001720: 45 20 42 49 54 53 0D 20 20 20 20 20 20 20 20 D3 |E BITS. .| 00001730: D4 C1 20 C4 C1 C2 D5 C6 2C D8 20 3B D3 54 4F 52 |.. .....,. ;.TOR| 00001740: 45 20 4F 55 54 50 55 54 0D 20 20 20 20 20 20 20 |E OUTPUT. | 00001750: 20 C9 CE D8 0D 20 20 20 20 20 20 20 20 CA D3 D2 | .... ...| 00001760: 20 C4 C1 CE D8 D4 20 20 20 3B C7 45 54 20 49 4E | ..... ;.ET IN| 00001770: 50 55 54 20 43 48 41 52 0D 20 20 20 20 20 20 20 |PUT CHAR. | 00001780: 20 C1 CE C4 20 23 31 35 20 20 20 20 20 3B D5 53 | ... #15 ;.S| 00001790: 45 20 4C 4F 57 20 34 20 42 49 54 53 0D 20 20 20 |E LOW 4 BITS. | 000017A0: 20 20 20 20 20 CF D2 C1 20 23 34 38 20 20 20 20 | ... #48 | 000017B0: 20 3B D0 55 54 20 5A 4F 4E 45 20 42 49 54 53 0D | ;.UT ZONE BITS.| 000017C0: 20 20 20 20 20 20 20 20 D3 D4 C1 20 C4 C1 C2 D5 | ... ....| 000017D0: C6 2C D8 20 3B D3 54 4F 52 45 20 4F 55 54 50 55 |.,. ;.TORE OUTPU| 000017E0: 54 0D 20 20 20 20 20 20 20 20 C9 CE D8 0D 20 20 |T. .... | 000017F0: 20 20 20 20 20 20 D4 D9 C1 20 20 20 20 20 20 20 | ... | 00001800: 20 20 3B D3 45 54 20 46 4C 41 47 53 0D 20 20 20 | ;.ET FLAGS. | 00001810: 20 20 20 20 20 C2 CE C5 20 C4 C1 CC CF CF D0 20 | ... ...... | 00001820: 20 3B C2 52 41 4E 43 48 20 4E 4F 54 20 44 4F 4E | ;.RANCH NOT DON| 00001830: 45 0D 20 20 20 20 20 20 20 20 CC C4 C1 20 23 30 |E. ... #0| 00001840: 20 20 20 20 20 20 3B D3 54 4F 52 45 20 5A 45 52 | ;.TORE ZER| 00001850: 4F 20 49 4E 0D 20 20 20 20 20 20 20 20 D3 D4 C1 |O IN. ...| 00001860: 20 C4 C1 C2 D5 C6 2C D8 20 3B 20 52 49 47 48 54 | .....,. ; RIGHT| 00001870: 20 4D 4F 53 54 20 4F 55 54 0D 20 20 20 20 20 20 | MOST OUT. | 00001880: 20 20 CC C4 D8 20 23 3C C4 C1 C2 D5 C6 20 3B D3 | ... #<..... ;.| 00001890: 45 54 20 41 44 44 52 45 53 53 20 49 4E 0D 20 20 |ET ADDRESS IN. | 000018A0: 20 20 20 20 20 20 CC C4 D9 20 23 3E C4 C1 C2 D5 | ... #>....| 000018B0: C6 20 3B 20 D8 20 41 4E 44 20 D9 0D 20 20 20 20 |. ; . AND .. | 000018C0: 20 20 20 20 D2 D4 D3 20 20 20 20 20 20 20 20 20 | ... | 000018D0: 3B D4 4F 20 43 41 4C 4C 49 4E 47 20 50 52 4F 47 |;.O CALLING PROG| 000018E0: 0D 20 C4 C1 CE D8 D4 20 20 CC C4 C1 20 C4 C1 CE |. ..... ... ...| 000018F0: D8 D4 2C D9 20 3B C7 45 54 20 4E 45 58 54 20 49 |..,. ;.ET NEXT I| 00001900: 4E 50 55 54 0D 20 20 20 20 20 20 20 20 20 20 20 |NPUT. | 00001910: 20 20 20 20 20 20 20 20 20 3B 20 52 4F 55 54 49 | ; ROUTI| 00001920: 4E 45 3A 20 C1 44 44 52 0D 20 20 20 20 20 20 20 |NE: .DDR. | 00001930: 20 20 20 20 20 20 20 20 20 20 20 20 20 3B 20 4F | ; O| 00001940: 46 20 49 4E 50 55 54 0D 20 20 20 20 20 20 20 20 |F INPUT. | 00001950: 20 20 20 20 20 20 20 20 20 20 20 20 3B 20 4F 56 | ; OV| 00001960: 45 52 4C 41 59 53 20 C4 C1 CE D8 D4 0D 20 20 20 |ERLAYS ...... | 00001970: 20 20 20 20 20 D2 D4 D3 20 20 20 20 20 20 20 20 | ... | 00001980: 20 3B D4 4F 20 43 41 4C 4C 49 4E 47 20 50 52 4F | ;.O CALLING PRO| 00001990: 47 0D 0D 20 20 20 20 C1 43 43 4F 4D 4D 4F 44 41 |G.. .CCOMMODA| 000019A0: 54 49 4E 47 20 41 20 4E 45 47 41 54 49 56 45 20 |TING A NEGATIVE | 000019B0: 4E 55 4D 42 45 52 0D 44 45 50 45 4E 44 53 20 55 |NUMBER.DEPENDS U| 000019C0: 50 4F 4E 20 54 48 45 20 43 4F 4E 56 45 4E 54 49 |PON THE CONVENTI| 000019D0: 4F 4E 53 20 55 53 45 44 2E 0D D4 48 45 20 50 52 |ONS USED...HE PR| 000019E0: 4F 50 45 52 20 50 4C 41 43 45 20 49 4E 20 54 48 |OPER PLACE IN TH| 000019F0: 45 20 C8 C5 D8 20 54 4F 0D C4 45 43 49 4D 41 4C |E ... TO..ECIMAL| 00001A00: 20 52 4F 55 54 49 4E 45 20 54 4F 20 54 52 41 50 | ROUTINE TO TRAP| 00001A10: 20 54 48 45 20 53 49 47 4E 20 49 53 0D 49 4D 4D | THE SIGN IS.IMM| 00001A20: 45 44 49 41 54 45 4C 59 20 42 45 46 4F 52 45 20 |EDIATELY BEFORE | 00001A30: C2 C4 30 30 33 2E 20 20 C9 46 20 54 48 45 0D 53 |..003. .F THE.S| 00001A40: 49 47 4E 20 49 53 20 53 54 4F 52 45 44 20 4F 46 |IGN IS STORED OF| 00001A50: 46 20 48 45 52 45 20 49 54 20 43 41 4E 20 42 45 |F HERE IT CAN BE| 00001A60: 0D 52 45 49 4E 53 45 52 54 45 44 20 41 54 20 C2 |.REINSERTED AT .| 00001A70: C4 30 30 36 2C 20 54 48 45 20 45 58 49 54 20 46 |.006, THE EXIT F| 00001A80: 52 4F 4D 0D 54 48 45 20 52 4F 55 54 49 4E 45 2E |ROM.THE ROUTINE.| 00001A90: 20 20 D9 4F 55 20 4D 41 59 20 48 41 56 45 20 54 | .OU MAY HAVE T| 00001AA0: 4F 20 55 53 45 20 54 48 45 0D 27 43 4F 4D 50 4C |O USE THE.'COMPL| 00001AB0: 45 4D 45 4E 54 27 20 4F 46 20 54 48 45 20 49 4E |EMENT' OF THE IN| 00001AC0: 50 55 54 20 46 49 45 4C 44 2E 0D 0D 20 20 20 20 |PUT FIELD... | 00001AD0: 20 20 20 20 2A 2A 2A 2A 20 C5 4E 44 20 4F 46 20 | **** .ND OF | 00001AE0: D4 45 58 54 20 2A 2A 2A 2A 0D |.EXT ****. |
..^U:ZERO... BITS: CONVERT HEXADECIMAL
TO ASCII.. BY MARTY MATTHEWS..
THERE IS A DOCUMENTED KERNEL.ROUTINE
AT $BDCD THAT IS USED BY.BASIC TO PRINT
OUT LINE NUMBERS. TO.DISPLAY A NUMBER L
ESS THAN 65535 YOU.CAN USE THIS ROUTINE.
FOR THE C128,.HOWEVER, YOU MAY WANT TO
SWITCH OUT.THE KERNAL AND, HENCE, LOSE
THE.ABILITY TO USE THE KERNAL ROUTINE...
WHAT WE NEED IS A WAY TO CONVERT.HEX
NUMBERS TO THEIR ASCII EQUIVALENT.WITHO
UT USING THE KERNAL ROUTINE... THE FO
LLOWING TWO ROUTINES, ONE.TO CONVERT HEX
TO PACKED OR ARITHMETIC.DECIMAL, AND TH
E SECOND TO CONVERT.PACKED DECIMAL TO DI
SPLAY ASCII, CAN.BE USED TO CONVERT HEX
TO ASCII.DISPLAY. THIS IS DONE WITHOUT
THE.KERNEL. THE CALLING SEQUENCE IS:..
1) LOAD [X] WITH THE LSB OF THE. ADDR
ESS OF THE INPUT FIELD.. (USE STANDAR
D LSB-MSB FORMAT). 2) LOAD [Y] WITH THE
MSB OF THE. ADDRESS OF THE INPUT FIEL
D.. 3) JSR TO HEXASC. 4) STORE THE RETUR
NED ADDRESS, WHICH. IS THE ADDRESS OF
THE RESULTANT. ASCII FIELD. THE ASC
II FIELD IS. DELIMITED WITH A BINARY
ZERO... THE ML INSTRUCTIONS CONSIST O
F.THREE SUBROUTINES. THEY ARE:..[1] THE
DRIVER --.. JSR BINDEC ;DO BINARY
-DECIMAL. JSR DECASC ;DO DECIMAL-AS
CII. RTS ;RTS TO CALLING PRO
G..[2] THE HEX TO DECIMAL ROUTINE --.
REQUIRES THE FOLLOWING CONSTANTS. A
ND STORAGE LOCATIONS... BDCW .BYTE 008 ;
FIELD WIDTH IN. BITS OF AN INPUT B
YTE... BDWK .BYTE 000 000 ;FIELD TO WHIC
H. THE INPUT IS MOVED. FIELD.
IS SAME SIZE AS INPUT FIELD.. BDRSLT
.BYTE 000 000 000 ;RESULT. OF HEX
TO DEC CONVERSION.. FIELD MUST ACC
OMODATE THE. NUMBER OF DECIMAL DIG
ITS. PRODUCED BY THE CONVERSION..
PACKED DECIMAL OR TWO. CHARA
CTERS PER BYTE... BDIN .BYTE 002 ;NUMBER
OF BYTES. OF INPUT DATA. (SEE BDW
K).. BDOUT .BYTE 003 ;NUMBER OF OUTPUT.
BYTES. (BDRSLT BYTES).. DLOP2 .BYT
E 000 ;LOOP CONTROL. NUMBER OF BIT
S TO A BYTE... BDNW .BYTE 000 ; TEMPORAR
Y STORAGE. FOR CURRENT BYTE.. T
HE HEX TO DECIMAL ROUTINE BEGINS.BY MOVI
NG THE INPUT FIELD TO THE BDWK.FIELD WIT
HIN THIS ROUTINE. THIS IS.DONE BY STORI
NG THE ADDRESS OF THE.INPUT FIELD (X AND
Y REGISTERS) INTO.THE MOVE INSTRUCTION
SET... BINDEC STX BD010+2 ;MOVE IN ADDRE
SS. STY BD010+3. LDX BDIN
;SET NUMBER BYTES. BD010 DEX
; MOVE LOOP. LDA BD010,X.
STA BDWK,X. TXA ;SET ZER
O FLAG. BNE BD010 ;LOOP IF NOT
ZERO..... ZERO THE OUTPUT OR RESULT F
IELDS... LDX BDOUT ;SET OUTPUT
SIZE. BD011 DEX. LDA #0.
STA BDRSLT,X. TXA ;SET FL
AGS. BNE BD011 ;LOOP IF NOT ZER
O.. SET THE MAJOR LOOP FOR THE NUMBER
.OF INPUT BYTES... LDY BDIN.
DEY...... SET THE MINOR LOOP FOR T
HE NUMBER.OF BITS PER BYTE OR CHARACTER
WIDTH... LDA BDCW. STA BDL
OP2.. BD003 IS THE START OF THE MAJOR
.LOOP. THE INPUT FIELD IS EXAMINED.BEGI
NNING WITH THE MSB. EACH BYTE OF.THE IN
PUT FIELD IS EXAMINED BIT BY.BIT STARTIN
G WITH HIGH ORDER BIT... ONE IS ADDED
TO THE OUTPUT FIELD.FOR EACH ONE BIT IN
THE BIT STREAM..EACH SHIFT OF BITS IN T
HE INPUT FIELD.CAUSES THE RESULT FIELD T
O BE.MULTIPLIED BY 2.... EXAMINE THE
HIGH BIT OF THE.CURRENT BYTE BY SHIFTING
THE BIT INTO.THE CARRY. THE CARRY IS T
HEN ADDED TO.THE RESULT... BD003 LDA BDW
K,Y ;LOAD CURRENT BYTE. ASL
; SHIFT SET CARRY. STA BDWK,Y ;ST
ORE CURRENT BYTE. SED ;SET
DECIMAL. LDA #0. ADC BDRSLT.
STA BDRSLT. LDA #0. A
DC BDRSLT+1. STA BDRSLT+1. L
DA #0. ADC BDRSLT+2. STA BDR
SLT+2.. CLD ;CLEAR DECIMAL
. DEC BDLOP2 ;DECREMENT MINOR.
BEQ BD005 ; LOOP: BRANCH.
; WHEN ZERO.. AFTER ADDING
THE CURRENT BIT, IF.THE NUMBER IS NOT EX
HAUSTED, THE.RESULT FIELD IS MULTIPLIED
BY TWO. IN.THIS CASE, ADDED TO ITSELF..
. BD007 SED ;SET DECIMAL.
CLC. LDA BDRSLT. ADC BDRSLT.
STA BDRSLT. LDA BDRSLT+1.
ADC BDRSLT+1. STA BDRSLT+1..
LDA BDRSLT+2. ADC BDRSLT+2.
STA BDRSLT+2. CLD. JMP
BD003 ;RETURN TO START.
; OF MAIN LOOP.. WHEN EACH ITERA
TION OF THE MINOR.LOOP IS COMPLETE, THE
ROUTINE BRANCHES.HERE TO DECREMENT THE M
AJOR LOOP. IF.THE MAJOR LOOP IS NOT EXH
AUSTED, THE.MINOR LOOP IS RESET AND THE
ROUTINE.CONTINUES FROM BD007, THE SECOND
PART.OF THE MAIN LOOP... BD005 TYA
;BRANCH ON ZERO. BEQ BD006 ;
TO EXIT. DEY ;DECREMENT L
OOP.. LDA BDCW ;RESET MINOR LOO
P. STA BDLOP2. JMP BD007..
WHEN BOTH LOOPS ARE EXHAUSTED, THE.ADD
RESS OF THE RESULT IS PLACED IN THE.X AN
D Y REGISTERS, AND THE NUMBER OF.RESULT
BYTES IN THE A REGISTER. THE.ROUTINE TH
EN EXITS THROUGH AN RTS... BD006 LDX #<B
DRSLT. LDY #>BDRSLT. LDA BDO
UT. RTS......[3] THE DECIMAL TO AS
CII ROUTINE --.THE DECIMAL TO ASCII ROUT
INE CONVERTS.PACKED DECIMAL INTO DISPLAY
ABLE ASCII.NUMBERS. THE ROUTINE INPUT I
S THE.ADDRESS OF THE INPUT FIELD IN [X]
AND.[Y], AND THE NUMBER OF INPUT BYTES I
N.[A]. THE ROUTINE STORES THE ADDRESS.I
NTO THE MOVE INSTRUCTION SEQUENCE AND.TR
ANSFERS [A] (NUMBER OF INPUT BYTES).TO [
Y]. [Y] IS A LOOP CONTROL.VARIABLE. TH
E OUTPUT OF THIS ROUTINE.IS PLACED INTO
THE DABUF FIELD WHOSE.ADDRESS IS RETURNE
D TO THE CALLING.PROGRAM IN [X] AND [Y].
THE OUTPUT IS.DELIMITED WITH A RIGHTMOS
T BINARY.ZERO..... THE DECIMAL TO ASC
II CONVERTER.USES ONLY ONE FIELD WHICH I
S THE FIELD.TO STORE THE OUTPUT OR CONVE
RTED ASCII.CHARACTERS... DABUF .BYTE 032
032 032 032 032 032. 000.
THE ML IS:.. DECASC STX DANXT+1 ;STOR
E ADDRESS. STY DANXT+2. TA
Y ;SHIFT TO Y. DALOOP DEY
;START MAIN LOOP. JSR DANXT ;
GET INPUT CHAR. LSR ;SHIF
T HIGH ORDER. LSR ; FOUR
BITS TO. LSR ; LOW ORDER.
LSR. ORA #48 ;PUT ZON
E BITS. STA DABUF,X ;STORE OUTPUT
. INX. JSR DANXT ;GET IN
PUT CHAR. AND #15 ;USE LOW 4
BITS. ORA #48 ;PUT ZONE BITS.
STA DABUF,X ;STORE OUTPUT.
INX. TYA ;SET FLAGS.
BNE DALOOP ;BRANCH NOT DONE.
LDA #0 ;STORE ZERO IN. STA
DABUF,X ; RIGHT MOST OUT. LDX #<
DABUF ;SET ADDRESS IN. LDY #>DABU
F ; X AND Y. RTS ;TO CALL
ING PROG. DANXT LDA DANXT,Y ;GET NEXT I
NPUT. ; ROUTINE: ADDR
. ; OF INPUT.
; OVERLAYS DANXT. RTS
;TO CALLING PROG.. ACCOMMODA
TING A NEGATIVE NUMBER.DEPENDS UPON THE
CONVENTIONS USED..THE PROPER PLACE IN TH
E HEX TO.DECIMAL ROUTINE TO TRAP THE SIG
N IS.IMMEDIATELY BEFORE BD003. IF THE.S
IGN IS STORED OFF HERE IT CAN BE.REINSER
TED AT BD006, THE EXIT FROM.THE ROUTINE.
YOU MAY HAVE TO USE THE.'COMPLEMENT' O
F THE INPUT FIELD... **** END OF
TEXT ****.
×
C64 Image
> CLICK IMAGE PREVIEW FOR FULL MODAL