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

SS LINKER

FILE INFORMATION

FILENAME(S): SS LINKER

FILE TYPE(S): SEQ

FILE SIZE: 2.1K

FIRST SEEN: 2025-11-30 17:16:38

APPEARS ON: 2 disk(s)

FILE HASH

fded410008b454f75d5706c27a3511a9ba5b6e77a38ac532c9a1071c5cae845f

FOUND ON DISKS (2 DISKS)

DISK TITLE FILENAME FILE TYPE COLLECTION TRACK SECTOR ACTIONS
ALIANTS SS LINKER SEQ Jonathan 20 3 DOWNLOAD FILE
ALIANTS SS LINKER SEQ Jonathan 20 3 DOWNLOAD FILE

FILE CONTENT & ANALYSIS

00000000: 20 6C 73 74 20 6F 66 66  0D 20 74 72 20 6F 6E 0D  | lst off. tr on.|
00000010: 20 65 78 70 20 6F 66 66  0D 2A 2A 2A 2A 2A 2A 2A  | exp off.*******|
00000020: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
00000030: 2A 2A 2A 2A 2A 2A 2A 2A  2A 0D 2A A0 A0 A0 A0 A0  |*********.*.....|
00000040: A0 A0 A0 A0 A0 A0 A0 A0  A0 A0 A0 A0 A0 A0 A0 A0  |................|
00000050: A0 A0 A0 A0 A0 A0 A0 A0  A0 2A 0D 2A A0 A0 A0 A0  |.........*.*....|
00000060: A0 A0 A0 A0 73 74 61 72  73 6F 66 74 A0 6C 6F 67  |....starsoft.log|
00000070: 6F A0 A0 A0 A0 A0 A0 A0  A0 A0 2A 0D 2A A0 A0 A0  |o.........*.*...|
00000080: A0 A0 A0 A0 A0 A0 A0 A0  A0 A0 A0 A0 A0 A0 A0 A0  |................|
00000090: A0 A0 A0 A0 A0 A0 A0 A0  A0 A0 A0 2A 0D 2A A0 A0  |...........*.*..|
000000A0: A0 A0 A0 A0 A0 A0 A0 A0  A0 53 53 A0 4C 49 4E 4B  |.........SS.LINK|
000000B0: 45 52 A0 A0 A0 A0 A0 A0  A0 A0 A0 A0 2A 0D 2A A0  |ER..........*.*.|
000000C0: A0 A0 A0 A0 A0 A0 A0 A0  A0 A0 A0 A0 A0 A0 A0 A0  |................|
000000D0: A0 A0 A0 A0 A0 A0 A0 A0  A0 A0 A0 A0 A0 2A 0D 2A  |.............*.*|
000000E0: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
000000F0: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 0D  |***************.|
00000100: 20 6F 72 67 20 24 38 30  30 30 0D 20 64 73 6B 20  | org $8000. dsk |
00000110: 22 40 30 3A 73 74 61 72  73 6F 66 74 A0 6C 6F 67  |"@0:starsoft.log|
00000120: 6F 22 2C 38 0D 2A A0 5A  45 52 4F A0 50 41 47 45  |o",8.*.ZERO.PAGE|
00000130: A0 56 41 52 49 41 42 4C  45 53 0D 67 65 74 66 72  |.VARIABLES.getfr|
00000140: 6F 6D 20 3D 20 24 39 65  0D 67 6F 74 6F 31 20 3D  |om = $9e.goto1 =|
00000150: 20 24 61 33 0D 67 6F 74  6F 32 20 3D 20 24 61 35  | $a3.goto2 = $a5|
00000160: 0D 5D 66 72 65 65 20 3D  20 24 62 32 0D 5D 66 72  |.]free = $b2.]fr|
00000170: 65 65 20 3D 20 24 66 62  0D 5D 66 72 65 65 20 3D  |ee = $fb.]free =|
00000180: 20 24 66 64 0D 5D 66 72  65 65 20 3D 20 24 61 37  | $fd.]free = $a7|
00000190: 0D 5D 66 72 65 65 20 3D  20 24 61 39 0D 5D 66 72  |.]free = $a9.]fr|
000001A0: 65 65 20 3D 20 24 36 61  0D 2A 2A 2A 2A 2A 2A 2A  |ee = $6a.*******|
000001B0: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
000001C0: 2A 2A 2A 2A 2A 2A 2A 2A  2A 0D 73 63 72 65 65 6E  |*********.screen|
000001D0: 20 3D 20 24 34 30 30 30  0D 2A 2A 2A 2A 2A 2A 2A  | = $4000.*******|
000001E0: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
000001F0: 2A 2A 2A 2A 2A 2A 2A 2A  2A 0D 63 6E 74 64 77 6E  |*********.cntdwn|
00000200: 30 20 6D 61 63 0D 20 6C  64 61 20 5D 31 0D 20 62  |0 mac. lda ]1. b|
00000210: 65 71 20 63 6E 74 64 6E  31 0D 20 64 65 63 20 5D  |eq cntdn1. dec ]|
00000220: 31 0D 63 6E 74 64 6E 31  20 3C 3C 3C 0D 2A 2A 2A  |1.cntdn1 <<<.***|
00000230: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
00000240: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 0D 73 65  |*************.se|
00000250: 74 72 61 73 74 20 6D 61  63 0D 20 6C 64 61 20 23  |trast mac. lda #|
00000260: 3C 5D 31 0D 20 6C 64 78  20 23 3C 5D 32 0D 20 6C  |<]1. ldx #<]2. l|
00000270: 64 79 20 23 3E 5D 32 0D  20 6A 73 72 20 72 61 73  |dy #>]2. jsr ras|
00000280: 74 73 65 74 0D 20 3C 3C  3C 0D 2A 2A 2A 2A 2A 2A  |tset. <<<.******|
00000290: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
000002A0: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 0D 61 64 64 6D 65  |**********.addme|
000002B0: 6D 20 6D 61 63 0D 20 6C  64 61 20 5D 31 0D 20 63  |m mac. lda ]1. c|
000002C0: 6C 63 0D 20 61 64 63 20  23 3C 5D 32 0D 20 73 74  |lc. adc #<]2. st|
000002D0: 61 20 5D 33 0D 20 6C 64  61 20 5D 31 2B 31 0D 20  |a ]3. lda ]1+1. |
000002E0: 61 64 63 20 23 3E 5D 32  0D 20 73 74 61 20 5D 33  |adc #>]2. sta ]3|
000002F0: 2B 31 0D 20 3C 3C 3C 0D  2A 2A 2A 2A 2A 2A 2A 2A  |+1. <<<.********|
00000300: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
00000310: 2A 2A 2A 2A 2A 2A 2A 2A  0D 6C 64 6D 65 6D 20 6D  |********.ldmem m|
00000320: 61 63 0D 20 6C 64 61 20  23 3C 5D 31 0D 20 73 74  |ac. lda #<]1. st|
00000330: 61 20 5D 32 0D 20 6C 64  61 20 23 3E 5D 31 0D 20  |a ]2. lda #>]1. |
00000340: 73 74 61 20 5D 32 2B 31  0D 20 3C 3C 3C 0D 2A 2A  |sta ]2+1. <<<.**|
00000350: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
00000360: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 0D 64  |**************.d|
00000370: 65 63 6D 65 6D 20 6D 61  63 0D 20 69 6E 63 20 5D  |ecmem mac. inc ]|
00000380: 31 0D 20 64 65 63 20 5D  31 0D 20 62 6E 65 20 64  |1. dec ]1. bne d|
00000390: 65 63 6D 65 6D 32 0D 20  64 65 63 20 5D 31 2B 31  |ecmem2. dec ]1+1|
000003A0: 0D 64 65 63 6D 65 6D 32  20 64 65 63 20 5D 31 0D  |.decmem2 dec ]1.|
000003B0: 20 3C 3C 3C 0D 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  | <<<.***********|
000003C0: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
000003D0: 2A 2A 2A 2A 2A 0D 69 6E  63 6D 65 6D 20 6D 61 63  |*****.incmem mac|
000003E0: 0D 20 69 6E 63 20 5D 31  0D 20 62 6E 65 20 69 6E  |. inc ]1. bne in|
000003F0: 63 6D 65 6D 32 0D 20 69  6E 63 20 5D 31 2B 31 0D  |cmem2. inc ]1+1.|
00000400: 69 6E 63 6D 65 6D 32 20  3C 3C 3C 0D 2A 2A 2A 2A  |incmem2 <<<.****|
00000410: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
00000420: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 0D 70 75 73  |************.pus|
00000430: 68 72 65 67 73 20 6D 61  63 0D 20 70 68 70 0D 20  |hregs mac. php. |
00000440: 70 68 61 0D 20 74 78 61  0D 20 70 68 61 0D 20 74  |pha. txa. pha. t|
00000450: 79 61 0D 20 70 68 61 0D  20 3C 3C 3C 0D 2A 2A 2A  |ya. pha. <<<.***|
00000460: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
00000470: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 0D 70 75  |*************.pu|
00000480: 6C 6C 72 65 67 73 20 6D  61 63 0D 20 70 6C 61 0D  |llregs mac. pla.|
00000490: 20 74 61 79 0D 20 70 6C  61 0D 20 74 61 78 0D 20  | tay. pla. tax. |
000004A0: 70 6C 61 0D 20 70 6C 70  0D 20 3C 3C 3C 0D 2A 2A  |pla. plp. <<<.**|
000004B0: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
000004C0: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 0D 69  |**************.i|
000004D0: 66 72 61 73 74 20 6D 61  63 0D 20 6C 64 61 20 24  |frast mac. lda $|
000004E0: 64 30 31 39 0D 20 73 74  61 20 24 64 30 31 39 0D  |d019. sta $d019.|
000004F0: 20 61 6E 64 20 23 31 0D  20 62 6E 65 20 69 66 72  | and #1. bne ifr|
00000500: 61 73 74 32 0D 20 6A 6D  70 20 72 65 74 69 6E 74  |ast2. jmp retint|
00000510: 0D 69 66 72 61 73 74 32  20 3C 3C 3C 0D 2A 2A 2A  |.ifrast2 <<<.***|
00000520: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
00000530: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 0D 6E 65  |*************.ne|
00000540: 78 74 72 61 73 74 20 6D  61 63 0D 20 6C 64 61 20  |xtrast mac. lda |
00000550: 23 3C 5D 31 0D 20 6C 64  78 20 23 3C 5D 32 0D 20  |#<]1. ldx #<]2. |
00000560: 6C 64 79 20 23 3E 5D 32  0D 20 6A 6D 70 20 6E 78  |ldy #>]2. jmp nx|
00000570: 74 72 73 74 32 0D 20 3C  3C 3C 0D 2A 2A 2A 2A 2A  |trst2. <<<.*****|
00000580: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
00000590: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 0D 6C 64 66 69  |***********.ldfi|
000005A0: 6C 65 20 6D 61 63 0D 20  6C 64 61 20 23 32 0D 20  |le mac. lda #2. |
000005B0: 6C 64 78 20 24 62 61 0D  20 6C 64 79 20 23 30 0D  |ldx $ba. ldy #0.|
000005C0: 20 6A 73 72 20 73 65 74  6C 66 73 0D 20 6C 64 61  | jsr setlfs. lda|
000005D0: 20 23 37 0D 20 6C 64 78  20 23 3C 5D 31 0D 20 6C  | #7. ldx #<]1. l|
000005E0: 64 79 20 23 3E 5D 31 0D  20 6A 73 72 20 73 65 74  |dy #>]1. jsr set|
000005F0: 6E 61 6D 0D 20 6C 64 61  20 23 30 0D 20 6C 64 78  |nam. lda #0. ldx|
00000600: 20 23 3C 5D 32 0D 20 6C  64 79 20 23 3E 5D 32 0D  | #<]2. ldy #>]2.|
00000610: 20 6A 73 72 20 6C 6F 61  64 0D 20 3C 3C 3C 0D 2A  | jsr load. <<<.*|
00000620: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
00000630: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 0D  |***************.|
00000640: 73 65 74 63 6C 72 20 6D  61 63 0D 20 62 65 71 20  |setclr mac. beq |
00000650: 63 6C 72 73 65 74 0D 20  6C 64 61 20 73 65 74 74  |clrset. lda sett|
00000660: 61 62 2C 79 0D 20 6F 72  61 20 5D 31 0D 20 6A 6D  |ab,y. ora ]1. jm|
00000670: 70 20 65 6E 64 63 6C 72  0D 63 6C 72 73 65 74 20  |p endclr.clrset |
00000680: 6C 64 61 20 73 65 74 74  61 62 2C 79 0D 20 65 6F  |lda settab,y. eo|
00000690: 72 20 23 24 66 66 0D 20  61 6E 64 20 5D 31 0D 65  |r #$ff. and ]1.e|
000006A0: 6E 64 63 6C 72 20 73 74  61 20 5D 31 0D 20 3C 3C  |ndclr sta ]1. <<|
000006B0: 3C 0D 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |<.**************|
000006C0: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
000006D0: 2A 2A 0D 63 6C 72 6D 65  6D 20 6D 61 63 0D 20 6C  |**.clrmem mac. l|
000006E0: 64 61 20 23 3C 5D 31 0D  20 73 74 61 20 67 6F 74  |da #<]1. sta got|
000006F0: 6F 31 0D 20 6C 64 61 20  23 3E 5D 31 0D 20 73 74  |o1. lda #>]1. st|
00000700: 61 20 67 6F 74 6F 31 2B  31 0D 20 6C 64 61 20 23  |a goto1+1. lda #|
00000710: 3C 5D 32 0D 20 73 74 61  20 6F 66 66 73 65 74 0D  |<]2. sta offset.|
00000720: 20 6C 64 61 20 23 3E 5D  32 0D 20 73 74 61 20 6F  | lda #>]2. sta o|
00000730: 66 66 73 65 74 2B 31 0D  20 6C 64 61 20 23 3C 5D  |ffset+1. lda #<]|
00000740: 33 0D 20 6A 73 72 20 63  6C 72 73 75 62 0D 20 3C  |3. jsr clrsub. <|
00000750: 3C 3C 0D 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |<<.*************|
00000760: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
00000770: 2A 2A 2A 0D 6D 6F 76 65  62 6C 6F 6B 20 6D 61 63  |***.moveblok mac|
00000780: 0D 20 6C 64 61 20 23 3C  5D 31 0D 20 73 74 61 20  |. lda #<]1. sta |
00000790: 67 65 74 66 72 6F 6D 0D  20 6C 64 61 20 23 3E 5D  |getfrom. lda #>]|
000007A0: 31 0D 20 73 74 61 20 67  65 74 66 72 6F 6D 2B 31  |1. sta getfrom+1|
000007B0: 0D 20 6C 64 61 20 23 3C  5D 32 0D 20 73 74 61 20  |. lda #<]2. sta |
000007C0: 67 6F 74 6F 31 0D 20 6C  64 61 20 23 3E 5D 32 0D  |goto1. lda #>]2.|
000007D0: 20 73 74 61 20 67 6F 74  6F 31 2B 31 0D 20 6C 64  | sta goto1+1. ld|
000007E0: 61 20 23 3C 5D 33 0D 20  73 74 61 20 6D 6F 76 65  |a #<]3. sta move|
000007F0: 6E 75 6D 0D 20 6C 64 61  20 23 3E 5D 33 0D 20 73  |num. lda #>]3. s|
00000800: 74 61 20 6D 6F 76 65 6E  75 6D 2B 31 0D 20 6A 73  |ta movenum+1. js|
00000810: 72 20 6D 6F 76 65 73 75  62 0D 20 3C 3C 3C 0D 2A  |r movesub. <<<.*|
00000820: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 2A  |****************|
00000830: 2A 2A 2A 2A 2A 2A 2A 2A  2A 2A 2A 2A 2A 2A 2A 0D  |***************.|
00000840: 20 70 75 74 20 22 73 73  A0 6D 61 69 6E 22 2C 38  | put "ss.main",8|
00000850: 0D 20 70 75 74 20 22 73  73 A0 66 6F 6E 74 22 2C  |. put "ss.font",|
00000860: 38 0D 20 70 75 74 20 22  73 73 A0 73 63 72 65 65  |8. put "ss.scree|
00000870: 6E 22 2C 38 0D 20 70 75  74 20 22 73 73 A0 62 6F  |n",8. put "ss.bo|
00000880: 72 64 65 72 22 2C 38 0D  20 65 6E 64 0D           |rder",8. end.   |
 LST OFF. TR ON. EXP OFF.***************
*****************.*                     
         *.*        STARSOFT LOGO       
  *.*                              *.*  
         SS LINKER          *.*         
                     *.*****************
***************. ORG $8000. DSK "@0:STAR
SOFT LOGO",8.* ZERO PAGE VARIABLES.GETFR
OM = $9E.GOTO1 = $A3.GOTO2 = $A5.]FREE =
 $B2.]FREE = $FB.]FREE = $FD.]FREE = $A7
.]FREE = $A9.]FREE = $6A.***************
*****************.SCREEN = $4000.*******
*************************.CNTDWN0 MAC. L
DA ]1. BEQ CNTDN1. DEC ]1.CNTDN1 <<<.***
*****************************.SETRAST MA
C. LDA #<]1. LDX #<]2. LDY #>]2. JSR RAS
TSET. <<<.******************************
**.ADDMEM MAC. LDA ]1. CLC. ADC #<]2. ST
A ]3. LDA ]1+1. ADC #>]2. STA ]3+1. <<<.
********************************.LDMEM M
AC. LDA #<]1. STA ]2. LDA #>]1. STA ]2+1
. <<<.********************************.D
ECMEM MAC. INC ]1. DEC ]1. BNE DECMEM2. 
DEC ]1+1.DECMEM2 DEC ]1. <<<.***********
*********************.INCMEM MAC. INC ]1
. BNE INCMEM2. INC ]1+1.INCMEM2 <<<.****
****************************.PUSHREGS MA
C. PHP. PHA. TXA. PHA. TYA. PHA. <<<.***
*****************************.PULLREGS M
AC. PLA. TAY. PLA. TAX. PLA. PLP. <<<.**
******************************.IFRAST MA
C. LDA $D019. STA $D019. AND #1. BNE IFR
AST2. JMP RETINT.IFRAST2 <<<.***********
*********************.NEXTRAST MAC. LDA 
#<]1. LDX #<]2. LDY #>]2. JMP NXTRST2. <
<<.********************************.LDFI
LE MAC. LDA #2. LDX $BA. LDY #0. JSR SET
LFS. LDA #7. LDX #<]1. LDY #>]1. JSR SET
NAM. LDA #0. LDX #<]2. LDY #>]2. JSR LOA
D. <<<.********************************.
SETCLR MAC. BEQ CLRSET. LDA SETTAB,Y. OR
A ]1. JMP ENDCLR.CLRSET LDA SETTAB,Y. EO
R #$FF. AND ]1.ENDCLR STA ]1. <<<.******
**************************.CLRMEM MAC. L
DA #<]1. STA GOTO1. LDA #>]1. STA GOTO1+
1. LDA #<]2. STA OFFSET. LDA #>]2. STA O
FFSET+1. LDA #<]3. JSR CLRSUB. <<<.*****
***************************.MOVEBLOK MAC
. LDA #<]1. STA GETFROM. LDA #>]1. STA G
ETFROM+1. LDA #<]2. STA GOTO1. LDA #>]2.
 STA GOTO1+1. LDA #<]3. STA MOVENUM. LDA
 #>]3. STA MOVENUM+1. JSR MOVESUB. <<<.*
*******************************. PUT "SS
 MAIN",8. PUT "SS FONT",8. PUT "SS SCREE
N",8. PUT "SS BORDER",8. END.
C64 Preview

> CLICK IMAGE PREVIEW FOR FULL MODAL