_  __   _  _         _ _     _      _           _           
  __| |/ /_ | || |     __| (_)___| | __ (_)_ __   __| | _____  __
 / _` | '_ \| || |_   / _` | / __| |/ / | | '_ \ / _` |/ _ \ \/ /
| (_| | (_) |__   _| | (_| | \__ \   <  | | | | | (_| |  __/>  < 
 \__,_|\___/   |_|    \__,_|_|___/_|\_\ |_|_| |_|\__,_|\___/_/\_\
                                                                 
            

BASE.LOGO

FILE INFORMATION

FILENAME(S): BASE.LOGO

FILE TYPE(S): PRG

FILE SIZE: 1.3K

FIRST SEEN: 2025-11-30 16:23:23

APPEARS ON: 1 disk(s)

FILE HASH

587423342c9ca12091e85d4ecede7daa14e2cdad30cb41aa262902377186b482

FOUND ON DISKS (1 DISKS)

DISK TITLE FILENAME FILE TYPE COLLECTION TRACK SECTOR ACTIONS
PROGRAMM 127 2 BASE.LOGO PRG BrainSkull, Michi Christian 19 3 DOWNLOAD FILE

FILE CONTENT & ANALYSIS

00000000: 00 20 54 4F 20 48 45 4C  50 0D 20 4E 44 0D 20 44  |. TO HELP. ND. D|
00000010: 4F 43 2E 4C 49 53 54 20  5B 42 41 53 45 20 42 49  |OC.LIST [BASE BI|
00000020: 4E 41 52 59 20 48 45 58  20 55 4E 42 41 53 45 20  |NARY HEX UNBASE |
00000030: 24 20 45 5D 0D 45 4E 44  0D 0D 54 4F 20 44 4F 43  |$ E].END..TO DOC|
00000040: 2E 4C 49 53 54 20 3A 50  52 4F 43 53 0D 20 49 46  |.LIST :PROCS. IF|
00000050: 20 45 4D 50 54 59 3F 20  3A 50 52 4F 43 53 20 53  | EMPTY? :PROCS S|
00000060: 54 4F 50 0D 20 44 4F 43  20 46 49 52 53 54 20 3A  |TOP. DOC FIRST :|
00000070: 50 52 4F 43 53 0D 20 50  52 49 4E 54 20 5B 5D 0D  |PROCS. PRINT [].|
00000080: 20 44 4F 43 2E 4C 49 53  54 20 42 46 20 3A 50 52  | DOC.LIST BF :PR|
00000090: 4F 43 53 0D 45 4E 44 0D  0D 54 4F 20 42 49 4E 41  |OCS.END..TO BINA|
000000A0: 52 59 20 3A 4E 55 4D 0D  20 3B 20 4F 55 54 50 55  |RY :NUM. ; OUTPU|
000000B0: 54 53 20 54 48 45 20 42  49 4E 41 52 59 20 52 45  |TS THE BINARY RE|
000000C0: 50 52 45 53 45 4E 54 41  54 49 4F 4E 20 4F 46 20  |PRESENTATION OF |
000000D0: 41 20 4E 55 4D 42 45 52  0D 20 4F 50 20 42 41 53  |A NUMBER. OP BAS|
000000E0: 45 20 32 20 3A 4E 55 4D  0D 45 4E 44 0D 0D 54 4F  |E 2 :NUM.END..TO|
000000F0: 20 48 45 58 20 3A 4E 55  4D 0D 20 3B 20 4F 55 54  | HEX :NUM. ; OUT|
00000100: 50 55 54 53 20 54 48 45  20 48 45 58 20 52 45 50  |PUTS THE HEX REP|
00000110: 52 45 53 45 4E 54 41 54  49 4F 4E 20 4F 46 20 41  |RESENTATION OF A|
00000120: 20 4E 55 4D 42 45 52 0D  20 4F 50 20 42 41 53 45  | NUMBER. OP BASE|
00000130: 20 31 36 20 3A 4E 55 4D  0D 45 4E 44 0D 0D 54 4F  | 16 :NUM.END..TO|
00000140: 20 55 4E 42 41 53 45 20  3A 42 41 53 45 20 3A 42  | UNBASE :BASE :B|
00000150: 4E 55 4D 0D 20 3B 20 4F  55 50 55 54 53 20 54 48  |NUM. ; OUPUTS TH|
00000160: 45 20 4E 55 4D 42 45 52  20 54 48 41 54 20 49 53  |E NUMBER THAT IS|
00000170: 20 52 45 50 52 45 53 45  4E 54 45 44 20 42 59 20  | REPRESENTED BY |
00000180: 3A 42 4E 55 4D 20 28 51  55 4F 54 45 44 20 57 4F  |:BNUM (QUOTED WO|
00000190: 52 44 29 20 49 4E 20 3A  42 41 53 45 0D 20 49 46  |RD) IN :BASE. IF|
000001A0: 20 3A 42 4E 55 4D 20 3D  20 30 20 4F 50 20 30 0D  | :BNUM = 0 OP 0.|
000001B0: 20 4F 50 20 24 49 4E 54  20 3A 42 4E 55 4D 20 30  | OP $INT :BNUM 0|
000001C0: 20 3A 42 41 53 45 0D 45  4E 44 0D 0D 54 4F 20 24  | :BASE.END..TO $|
000001D0: 20 3A 4E 55 4D 0D 20 3B  20 43 4F 4E 56 45 52 54  | :NUM. ; CONVERT|
000001E0: 53 20 41 20 48 45 58 20  4E 55 4D 42 45 52 20 28  |S A HEX NUMBER (|
000001F0: 51 55 4F 54 45 44 20 57  4F 52 44 29 20 54 4F 20  |QUOTED WORD) TO |
00000200: 41 20 4E 55 4D 42 45 52  0D 20 4F 50 20 24 49 4E  |A NUMBER. OP $IN|
00000210: 54 20 3A 4E 55 4D 20 30  20 31 36 0D 45 4E 44 0D  |T :NUM 0 16.END.|
00000220: 0D 54 4F 20 45 20 3A 41  44 44 52 0D 20 3B 20 53  |.TO E :ADDR. ; S|
00000230: 48 4F 52 54 20 46 4F 52  20 2E 45 58 41 4D 49 4E  |HORT FOR .EXAMIN|
00000240: 45 0D 20 4F 50 20 2E 45  58 41 4D 49 4E 45 20 3A  |E. OP .EXAMINE :|
00000250: 41 44 44 52 0D 45 4E 44  0D 0D 54 4F 20 56 41 4C  |ADDR.END..TO VAL|
00000260: 44 49 47 20 3A 4E 0D 20  49 46 20 3A 4E 20 3C 20  |DIG :N. IF :N < |
00000270: 31 30 20 4F 50 20 3A 4E  0D 20 4F 50 20 43 48 41  |10 OP :N. OP CHA|
00000280: 52 20 35 35 20 2B 20 3A  4E 0D 45 4E 44 0D 0D 54  |R 55 + :N.END..T|
00000290: 4F 20 42 41 53 45 31 20  3A 4E 55 4D 0D 20 49 46  |O BASE1 :NUM. IF|
000002A0: 20 3A 4E 55 4D 20 3D 20  30 20 4F 50 20 22 0D 20  | :NUM = 0 OP ". |
000002B0: 4F 50 20 57 4F 52 44 20  42 41 53 45 31 20 28 20  |OP WORD BASE1 ( |
000002C0: 51 55 4F 54 49 45 4E 54  20 3A 4E 55 4D 20 3A 42  |QUOTIENT :NUM :B|
000002D0: 41 53 45 20 29 20 28 20  56 41 4C 44 49 47 20 52  |ASE ) ( VALDIG R|
000002E0: 45 4D 41 49 4E 44 45 52  20 3A 4E 55 4D 20 3A 42  |EMAINDER :NUM :B|
000002F0: 41 53 45 20 29 0D 45 4E  44 0D 0D 54 4F 20 55 4E  |ASE ).END..TO UN|
00000300: 42 4E 31 20 3A 4E 55 4D  0D 20 49 46 20 3A 4E 55  |BN1 :NUM. IF :NU|
00000310: 4D 20 3D 20 30 20 4F 50  20 22 0D 20 4F 50 20 57  |M = 0 OP ". OP W|
00000320: 4F 52 44 20 55 4E 42 31  20 51 55 4F 54 49 45 4E  |ORD UNB1 QUOTIEN|
00000330: 54 20 3A 4E 55 4D 20 32  20 28 20 52 45 4D 41 49  |T :NUM 2 ( REMAI|
00000340: 4E 44 45 52 20 3A 4E 55  4D 20 32 20 29 0D 45 4E  |NDER :NUM 2 ).EN|
00000350: 44 0D 0D 54 4F 20 44 49  47 56 41 4C 20 3A 43 48  |D..TO DIGVAL :CH|
00000360: 41 52 0D 20 49 46 20 4E  55 4D 42 45 52 3F 20 3A  |AR. IF NUMBER? :|
00000370: 43 48 41 52 20 4F 50 20  3A 43 48 41 52 0D 20 4F  |CHAR OP :CHAR. O|
00000380: 50 20 2D 20 35 35 20 2B  20 41 53 43 49 49 20 3A  |P - 55 + ASCII :|
00000390: 43 48 41 52 0D 45 4E 44  0D 0D 54 4F 20 24 49 4E  |CHAR.END..TO $IN|
000003A0: 54 20 3A 4E 55 4D 20 3A  56 41 4C 20 3A 42 41 53  |T :NUM :VAL :BAS|
000003B0: 45 0D 20 49 46 20 3A 4E  55 4D 20 3D 20 22 20 4F  |E. IF :NUM = " O|
000003C0: 50 20 3A 56 41 4C 0D 20  4F 50 20 24 49 4E 54 20  |P :VAL. OP $INT |
000003D0: 42 46 20 3A 4E 55 4D 20  3A 56 41 4C 20 2A 20 3A  |BF :NUM :VAL * :|
000003E0: 42 41 53 45 20 2B 20 44  49 47 56 41 4C 20 46 49  |BASE + DIGVAL FI|
000003F0: 52 53 54 20 3A 4E 55 4D  20 3A 42 41 53 45 0D 45  |RST :NUM :BASE.E|
00000400: 4E 44 0D 0D 54 4F 20 24  32 20 3A 4E 55 4D 0D 20  |ND..TO $2 :NUM. |
00000410: 4F 50 20 24 49 4E 54 20  3A 4E 55 4D 20 30 20 32  |OP $INT :NUM 0 2|
00000420: 0D 45 4E 44 0D 0D 54 4F  20 44 4F 43 20 3A 50 52  |.END..TO DOC :PR|
00000430: 4F 43 0D 20 4C 4F 43 41  4C 20 22 54 45 58 54 20  |OC. LOCAL "TEXT |
00000440: 4D 41 4B 45 20 22 54 45  58 54 20 54 45 58 54 20  |MAKE "TEXT TEXT |
00000450: 3A 50 52 4F 43 0D 20 4C  4F 43 41 4C 20 22 44 4F  |:PROC. LOCAL "DO|
00000460: 43 20 4D 41 4B 45 20 22  44 4F 43 20 46 49 52 53  |C MAKE "DOC FIRS|
00000470: 54 20 42 46 20 3A 54 45  58 54 0D 20 28 20 50 52  |T BF :TEXT. ( PR|
00000480: 49 4E 54 20 3A 50 52 4F  43 20 46 49 52 53 54 20  |INT :PROC FIRST |
00000490: 3A 54 45 58 54 20 29 0D  20 49 46 20 22 3B 20 3D  |:TEXT ). IF "; =|
000004A0: 20 46 49 52 53 54 20 3A  44 4F 43 20 50 52 49 4E  | FIRST :DOC PRIN|
000004B0: 54 20 42 46 20 3A 44 4F  43 0D 45 4E 44 0D 0D 54  |T BF :DOC.END..T|
000004C0: 4F 20 42 41 53 45 20 3A  42 41 53 45 20 3A 4E 55  |O BASE :BASE :NU|
000004D0: 4D 0D 20 3B 20 4F 55 54  50 55 54 53 20 54 48 45  |M. ; OUTPUTS THE|
000004E0: 20 52 45 50 52 45 53 45  4E 54 41 54 49 4F 4E 20  | REPRESENTATION |
000004F0: 4F 46 20 3A 4E 55 4D 20  49 4E 20 3A 42 41 53 45  |OF :NUM IN :BASE|
00000500: 0D 20 49 46 20 3A 4E 55  4D 20 3D 20 30 20 4F 50  |. IF :NUM = 0 OP|
00000510: 20 30 0D 20 4F 50 20 42  41 53 45 31 20 3A 4E 55  | 0. OP BASE1 :NU|
00000520: 4D 0D 45 4E 44 0D 0D 4D  41 4B 45 20 22 53 54 41  |M.END..MAKE "STA|
00000530: 52 54 55 50 20 5B 48 45  4C 50 5D 0D FF FF        |RTUP [HELP]...  |
. TO HELP. ND. DOC.LIST [BASE BINARY HEX
 UNBASE $ E].END..TO DOC.LIST :PROCS. IF
 EMPTY? :PROCS STOP. DOC FIRST :PROCS. P
RINT []. DOC.LIST BF :PROCS.END..TO BINA
RY :NUM. ; OUTPUTS THE BINARY REPRESENTA
TION OF A NUMBER. OP BASE 2 :NUM.END..TO
 HEX :NUM. ; OUTPUTS THE HEX REPRESENTAT
ION OF A NUMBER. OP BASE 16 :NUM.END..TO
 UNBASE :BASE :BNUM. ; OUPUTS THE NUMBER
 THAT IS REPRESENTED BY :BNUM (QUOTED WO
RD) IN :BASE. IF :BNUM = 0 OP 0. OP $INT
 :BNUM 0 :BASE.END..TO $ :NUM. ; CONVERT
S A HEX NUMBER (QUOTED WORD) TO A NUMBER
. OP $INT :NUM 0 16.END..TO E :ADDR. ; S
HORT FOR .EXAMINE. OP .EXAMINE :ADDR.END
..TO VALDIG :N. IF :N < 10 OP :N. OP CHA
R 55 + :N.END..TO BASE1 :NUM. IF :NUM = 
0 OP ". OP WORD BASE1 ( QUOTIENT :NUM :B
ASE ) ( VALDIG REMAINDER :NUM :BASE ).EN
D..TO UNBN1 :NUM. IF :NUM = 0 OP ". OP W
ORD UNB1 QUOTIENT :NUM 2 ( REMAINDER :NU
M 2 ).END..TO DIGVAL :CHAR. IF NUMBER? :
CHAR OP :CHAR. OP - 55 + ASCII :CHAR.END
..TO $INT :NUM :VAL :BASE. IF :NUM = " O
P :VAL. OP $INT BF :NUM :VAL * :BASE + D
IGVAL FIRST :NUM :BASE.END..TO $2 :NUM. 
OP $INT :NUM 0 2.END..TO DOC :PROC. LOCA
L "TEXT MAKE "TEXT TEXT :PROC. LOCAL "DO
C MAKE "DOC FIRST BF :TEXT. ( PRINT :PRO
C FIRST :TEXT ). IF "; = FIRST :DOC PRIN
T BF :DOC.END..TO BASE :BASE :NUM. ; OUT
PUTS THE REPRESENTATION OF :NUM IN :BASE
. IF :NUM = 0 OP 0. OP BASE1 :NUM.END..M
AKE "STARTUP [HELP]...
C64 Preview

> CLICK IMAGE PREVIEW FOR FULL MODAL