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

BASIC-WORD

FILE INFORMATION

FILENAME(S): BASIC-WORD

FILE TYPE(S): DEL, PRG

FILE SIZE: 1.2K

FIRST SEEN: 2025-11-30 18:15:02

APPEARS ON: 2 disk(s)

FILE HASH

1a6123ba96102ba7d97ef162e940f22a73a57ad728935bd6419eda88d5032fdb

FOUND ON DISKS (2 DISKS)

DISK TITLE FILENAME FILE TYPE COLLECTION TRACK SECTOR ACTIONS
NYTTO PRG C64 BASIC-WORD DEL Sailor, Lex 3 11 DOWNLOAD FILE
CDS TEST BASIC-WORD PRG Sailor, Lex 27 1 DOWNLOAD FILE

FILE CONTENT & ANALYSIS

00000000: 01 08 2E 08 0A 00 8F 20  20 4C 4F 4F 50 20 54 4F  |.......  LOOP TO|
00000010: 20 43 4F 50 59 20 52 4F  4D 20 49 4E 54 4F 20 52  | COPY ROM INTO R|
00000020: 41 4D 2C 20 42 45 48 49  4E 44 20 52 4F 4D 00 41  |AM, BEHIND ROM.A|
00000030: 08 14 00 81 41 B2 34 30  39 36 30 A4 34 39 31 35  |....A.40960.4915|
00000040: 32 00 4D 08 1E 00 97 41  2C C2 28 41 29 00 53 08  |2.M....A,.(A).S.|
00000050: 28 00 82 00 6D 08 32 00  8F 20 20 54 41 4B 45 20  |(...m.2..  TAKE |
00000060: 4F 55 54 20 42 41 53 49  43 20 52 4F 4D 00 77 08  |OUT BASIC ROM.w.|
00000070: 3C 00 97 31 2C 35 34 00  98 08 46 00 8F 20 20 50  |<..1,54...F..  P|
00000080: 55 54 20 52 45 53 45 52  56 45 44 20 57 4F 52 44  |UT RESERVED WORD|
00000090: 20 49 4E 54 4F 20 52 24  00 B1 08 50 00 85 22 11  | INTO R$...P..".|
000000A0: 52 45 53 45 52 56 45 44  20 57 4F 52 44 22 3B 52  |RESERVED WORD";R|
000000B0: 24 00 E5 08 5A 00 8F 20  20 53 45 54 20 54 45 52  |$...Z..  SET TER|
000000C0: 4D 49 4E 41 54 4F 52 20  4D 41 52 4B 45 52 20 4F  |MINATOR MARKER O|
000000D0: 4E 20 4C 41 53 54 20 42  59 54 45 20 4F 46 20 53  |N LAST BYTE OF S|
000000E0: 54 52 49 4E 47 00 0C 09  64 00 52 24 B2 C8 28 52  |TRING...d.R$..(R|
000000F0: 24 2C C3 28 52 24 29 AB  31 29 AA C7 28 C6 28 C9  |$,.(R$).1)..(.(.|
00000100: 28 52 24 2C 31 29 29 AA  31 32 38 29 00 3A 09 6E  |(R$,1)).128).:.n|
00000110: 00 8F 20 52 4F 55 54 49  4E 45 20 54 4F 20 53 45  |.. ROUTINE TO SE|
00000120: 41 52 43 48 20 52 4F 4D  20 46 4F 52 20 52 45 53  |ARCH ROM FOR RES|
00000130: 45 52 56 45 44 20 57 4F  52 44 00 43 09 78 00 8D  |ERVED WORD.C.x..|
00000140: 32 39 30 00 67 09 82 00  8B 46 B2 30 A7 99 22 93  |290.g....F.0..".|
00000150: 11 11 20 20 20 20 20 20  20 4E 4F 54 20 46 4F 55  |..       NOT FOU|
00000160: 4E 44 22 3A 89 38 30 00  89 09 8C 00 85 22 59 4F  |ND":.80......"YO|
00000170: 55 52 20 57 4F 52 44 20  28 53 41 4D 45 20 4C 45  |UR WORD (SAME LE|
00000180: 4E 47 54 48 29 22 3B 4E  24 00 B3 09 96 00 8F 20  |NGTH)";N$...... |
00000190: 20 43 48 45 43 4B 20 4C  45 4E 47 54 48 20 4F 46  | CHECK LENGTH OF|
000001A0: 20 57 4F 52 44 53 20 41  52 45 20 54 48 45 20 53  | WORDS ARE THE S|
000001B0: 41 4D 45 00 C9 09 A0 00  8B C3 28 4E 24 29 B3 B1  |AME.......(N$)..|
000001C0: C3 28 52 24 29 A7 31 34  30 00 DF 09 AA 00 8F 20  |.(R$).140...... |
000001D0: 20 41 44 44 20 54 45 52  4D 49 4E 41 54 4F 52 00  | ADD TERMINATOR.|
000001E0: 06 0A B4 00 4E 24 B2 C8  28 4E 24 2C C3 28 4E 24  |....N$..(N$,.(N$|
000001F0: 29 AB 31 29 AA C7 28 C6  28 C9 28 4E 24 2C 31 29  |).1)..(.(.(N$,1)|
00000200: 29 AA 31 32 38 29 00 26  0A BE 00 8F 20 20 4C 4F  |).128).&....  LO|
00000210: 4F 50 20 54 4F 20 50 4F  4B 45 20 49 4E 20 4E 45  |OP TO POKE IN NE|
00000220: 57 20 57 4F 52 44 00 35  0A C8 00 81 4A B2 31 A4  |W WORD.5....J.1.|
00000230: C3 28 4E 24 29 00 4E 0A  D2 00 97 41 44 AA 4A AB  |.(N$).N....AD.J.|
00000240: 31 2C C6 28 CA 28 4E 24  2C 4A 2C 31 29 29 00 54  |1,.(.(N$,J,1)).T|
00000250: 0A DC 00 82 00 78 0A E6  00 99 22 93 11 11 11 11  |.....x....".....|
00000260: 11 20 20 20 20 41 4E 4F  54 48 45 52 20 57 4F 52  |.    ANOTHER WOR|
00000270: 44 20 28 59 2F 4E 29 22  00 95 0A F0 00 A1 41 24  |D (Y/N)"......A$|
00000280: 3A 8B 41 24 B3 B1 22 59  22 AF 41 24 B3 B1 22 4E  |:.A$.."Y".A$.."N|
00000290: 22 A7 32 34 30 00 A3 0A  FA 00 8B 41 24 B2 22 4E  |".240......A$."N|
000002A0: 22 A7 80 00 B7 0A 04 01  8F 20 20 41 4E 4F 54 48  |"........  ANOTH|
000002B0: 45 52 20 57 4F 52 44 00  BF 0A 0E 01 89 38 30 00  |ER WORD......80.|
000002C0: DB 0A 18 01 8F 20 20 53  54 41 52 54 20 41 44 44  |.....  START ADD|
000002D0: 52 45 53 53 20 4F 46 20  52 4F 4D 00 E8 0A 22 01  |RESS OF ROM...".|
000002E0: 41 44 B2 34 30 39 36 30  00 02 0B 2C 01 8F 20 47  |AD.40960...,.. G|
000002F0: 45 54 20 46 49 52 53 54  20 43 48 41 52 41 43 54  |ET FIRST CHARACT|
00000300: 45 52 00 15 0B 36 01 43  B2 C6 28 CA 28 52 24 2C  |ER...6.C..(.(R$,|
00000310: 31 2C 31 29 29 00 37 0B  40 01 8F 20 49 46 20 46  |1,1)).7.@.. IF F|
00000320: 49 52 53 54 20 43 48 41  52 2E 20 43 48 45 43 4B  |IRST CHAR. CHECK|
00000330: 20 4F 54 48 45 52 53 00  48 0B 4A 01 8B C2 28 41  | OTHERS.H.J...(A|
00000340: 44 29 B2 43 A7 34 32 30  00 69 0B 54 01 8F 20 20  |D).C.420.i.T..  |
00000350: 4C 4F 4F 4B 20 41 54 20  4E 45 58 54 20 52 4F 4D  |LOOK AT NEXT ROM|
00000360: 20 50 4F 53 49 54 49 4F  4E 00 75 0B 5E 01 41 44  | POSITION.u.^.AD|
00000370: B2 41 44 AA 31 00 9F 0B  68 01 8F 20 20 43 48 45  |.AD.1...h..  CHE|
00000380: 43 4B 20 46 4F 52 20 45  4E 44 20 4F 46 20 57 4F  |CK FOR END OF WO|
00000390: 52 44 20 54 41 42 4C 45  20 49 4E 20 52 4F 4D 00  |RD TABLE IN ROM.|
000003A0: B4 0B 72 01 8B 41 44 B2  B1 34 32 30 30 30 A7 46  |..r..AD..42000.F|
000003B0: B2 30 3A 8E 00 CD 0B 86  01 8F 20 20 53 54 41 52  |.0:.......  STAR|
000003C0: 54 53 20 4E 45 58 54 20  43 48 45 43 4B 00 D6 0B  |TS NEXT CHECK...|
000003D0: 90 01 89 33 31 30 00 05  0C 9A 01 8F 20 20 53 45  |...310......  SE|
000003E0: 54 20 50 4F 49 4E 54 45  52 20 54 4F 20 50 4F 53  |T POINTER TO POS|
000003F0: 49 54 49 4F 4E 20 4F 46  20 53 45 43 4F 4E 44 20  |ITION OF SECOND |
00000400: 43 48 41 52 2E 00 11 0C  A4 01 41 44 B2 41 44 AA  |CHAR......AD.AD.|
00000410: 31 00 37 0C AE 01 8F 20  20 4C 4F 4F 50 20 43 48  |1.7....  LOOP CH|
00000420: 45 43 4B 20 52 45 53 54  20 4F 46 20 43 48 41 52  |ECK REST OF CHAR|
00000430: 2E 20 4D 41 54 43 48 00  46 0C B8 01 81 4A B2 32  |. MATCH.F....J.2|
00000440: A4 C3 28 52 24 29 00 5E  0C C2 01 8F 20 20 43 48  |..(R$).^....  CH|
00000450: 45 43 4B 20 45 41 43 48  20 43 48 41 52 2E 00 7F  |ECK EACH CHAR...|
00000460: 0C CC 01 8B C2 28 41 44  AA 4A AB 32 29 B3 B1 C6  |.....(AD.J.2)...|
00000470: 28 CA 28 52 24 2C 4A 2C  31 29 29 A7 33 31 30 00  |(.(R$,J,1)).310.|
00000480: 85 0C D6 01 82 00 C2 0C  E0 01 8F 20 20 53 45 54  |...........  SET|
00000490: 20 50 4F 49 4E 54 45 52  20 54 4F 20 46 49 52 53  | POINTER TO FIRS|
000004A0: 54 20 53 54 41 52 54 20  4F 46 20 57 4F 52 44 20  |T START OF WORD |
000004B0: 41 4E 44 20 53 45 54 20  46 4F 55 4E 44 20 46 4C  |AND SET FOUND FL|
000004C0: 41 47 00 D3 0C EA 01 41  44 B2 41 44 AB 31 3A 46  |AG.....AD.AD.1:F|
000004D0: B2 AB 31 00 D9 0C F4 01  8E 00 00 00 00           |..1..........   |
.......  LOOP TO COPY ROM INTO RAM, BEHI
ND ROM.A....A.40960.49152.M....A,B(A).S.
(...M.2..  TAKE OUT BASIC ROM.W.<..1,54.
..F..  PUT RESERVED WORD INTO R$...P..".
RESERVED WORD";R$...Z..  SET TERMINATOR 
MARKER ON LAST BYTE OF STRING...D.R$.H(R
$,C(R$).1).G(F(I(R$,1)).128).:.N.. ROUTI
NE TO SEARCH ROM FOR RESERVED WORD.C.X..
290.G....F.0.."...       NOT FOUND":.80.
....."YOUR WORD (SAME LENGTH)";N$...... 
 CHECK LENGTH OF WORDS ARE THE SAME.I. .
.C(N$)..C(R$).140......  ADD TERMINATOR.
....N$.H(N$,C(N$).1).G(F(I(N$,1)).128).&
....  LOOP TO POKE IN NEW WORD.5.H..J.1.
C(N$).N.R..AD.J.1,F(J(N$,J,1)).T.....X..
.."......    ANOTHER WORD (Y/N)"......A$
:.A$.."Y".A$.."N".240......A$."N".......
.  ANOTHER WORD......80......  START ADD
RESS OF ROM...".AD.40960...,.. GET FIRST
 CHARACTER...6.C.F(J(R$,1,1)).7.@.. IF F
IRST CHAR. CHECK OTHERS.H.J..B(AD).C.420
.I.T..  LOOK AT NEXT ROM POSITION.U.^.AD
.AD.1...H..  CHECK FOR END OF WORD TABLE
 IN ROM...R..AD..42000.F.0:..M....  STAR
TS NEXT CHECK.V....310......  SET POINTE
R TO POSITION OF SECOND CHAR......AD.AD.
1.7....  LOOP CHECK REST OF CHAR. MATCH.
F....J.2.C(R$).^.B..  CHECK EACH CHAR..
.L..B(AD.J.2)..F(J(R$,J,1)).310...V...B.
...  SET POINTER TO FIRST START OF WORD 
AND SET FOUND FLAG.S...AD.AD.1:F..1.Y...
.....
C64 Preview

> CLICK IMAGE PREVIEW FOR FULL MODAL