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

SCR12

FILE INFORMATION

FILENAME(S): SCR12

FILE TYPE(S): SEQ

FILE SIZE: 1K

FIRST SEEN: 2025-11-30 21:15:31

APPEARS ON: 1 disk(s)

FILE HASH

ad86a9e0c4c36f2ac2aff53e5bc913b0a323a843659d86cd26a66fabc4726391

FOUND ON DISKS (1 DISKS)

DISK TITLE FILENAME FILE TYPE COLLECTION TRACK SECTOR ACTIONS
FORTH 64 1 SCR12 SEQ DuncanTwain 12 9 DOWNLOAD FILE

FILE CONTENT & ANALYSIS

00000000: 28 20 43 4F 44 45 2C 20  3B 43 4F 44 45 2C 20 4F  |( CODE, ;CODE, O|
00000010: 50 45 52 41 4E 44 20 29  20 48 45 58 20 20 20 20  |PERAND ) HEX    |
00000020: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000030: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000040: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000050: 46 4F 52 54 48 20 44 45  46 49 4E 49 54 49 4F 4E  |FORTH DEFINITION|
00000060: 53 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |S               |
00000070: 20 20 20 20 20 20 20 20  3A 20 43 4F 44 45 20 3F  |        : CODE ?|
00000080: 45 58 45 43 20 43 52 45  41 54 45 20 53 4D 55 44  |EXEC CREATE SMUD|
00000090: 47 45 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |GE              |
000000A0: 20 20 20 5B 43 4F 4D 50  49 4C 45 5D 20 41 53 53  |   [COMPILE] ASS|
000000B0: 45 4D 42 4C 45 52 20 20  20 21 43 53 50 20 4C 41  |EMBLER   !CSP LA|
000000C0: 54 45 53 54 20 20 20 20  20 20 20 50 46 41 20 44  |TEST       PFA D|
000000D0: 55 50 20 32 20 2D 20 21  20 3B 20 20 20 20 20 20  |UP 2 - ! ;      |
000000E0: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000000F0: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000100: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000110: 20 20 20 20 20 20 20 20  28 20 3B 43 4F 44 45 20  |        ( ;CODE |
00000120: 49 53 20 41 4C 52 45 41  44 59 20 44 45 46 49 4E  |IS ALREADY DEFIN|
00000130: 45 44 20 49 4E 20 54 48  45 20 46 4F 52 54 48 20  |ED IN THE FORTH |
00000140: 20 20 4B 45 52 4E 41 4C  2E 20 20 4A 55 53 54 20  |  KERNAL.  JUST |
00000150: 52 45 44 45 46 49 4E 45  20 54 4F 20 49 4E 56 4F  |REDEFINE TO INVO|
00000160: 4B 45 20 54 48 45 20 20  20 20 41 53 53 45 4D 42  |KE THE    ASSEMB|
00000170: 4C 45 52 20 56 4F 43 41  42 55 4C 41 52 59 20 29  |LER VOCABULARY )|
00000180: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000190: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000001A0: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000001B0: 20 20 20 20 20 20 20 20  3A 20 3B 43 4F 44 45 20  |        : ;CODE |
000001C0: 5B 43 4F 4D 50 49 4C 45  5D 20 41 53 53 45 4D 42  |[COMPILE] ASSEMB|
000001D0: 4C 45 52 20 20 20 20 20  20 20 20 20 20 20 20 20  |LER             |
000001E0: 20 20 20 20 20 20 20 20  5B 43 4F 4D 50 49 4C 45  |        [COMPILE|
000001F0: 5D 20 3B 43 4F 44 45 20  20 3B 20 20 49 4D 4D 45  |] ;CODE  ;  IMME|
00000200: 44 49 41 54 45 20 20 20  41 53 53 45 4D 42 4C 45  |DIATE   ASSEMBLE|
00000210: 52 20 44 45 46 49 4E 49  54 49 4F 4E 53 20 20 20  |R DEFINITIONS   |
00000220: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000230: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000240: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000250: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000260: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000270: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000280: 28 20 46 45 54 43 48 20  43 46 41 20 4F 46 20 50  |( FETCH CFA OF P|
00000290: 52 4F 50 45 52 20 41 44  44 52 45 53 53 20 4D 4F  |ROPER ADDRESS MO|
000002A0: 44 45 29 20 20 20 20 20  28 20 41 44 4D 41 53 4B  |DE)     ( ADMASK|
000002B0: 20 4F 50 42 41 53 45 20  2D 2D 2D 20 41 44 4D 41  | OPBASE --- ADMA|
000002C0: 53 4B 20 4F 50 42 41 53  45 20 43 46 41 20 29 20  |SK OPBASE CFA ) |
000002D0: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000002E0: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000002F0: 20 20 20 20 20 20 20 20  3A 20 4F 50 45 52 41 4E  |        : OPERAN|
00000300: 44 20 4F 56 45 52 20 4D  4F 44 45 20 40 20 41 4E  |D OVER MODE @ AN|
00000310: 44 20 30 20 31 30 20 30  20 44 4F 20 20 20 20 20  |D 0 10 0 DO     |
00000320: 20 20 53 57 41 50 20 44  55 50 20 31 20 41 4E 44  |  SWAP DUP 1 AND|
00000330: 20 49 46 20 4C 45 41 56  45 20 53 57 41 50 20 45  | IF LEAVE SWAP E|
00000340: 4C 53 45 20 20 20 20 20  20 20 32 2F 20 53 57 41  |LSE       2/ SWA|
00000350: 50 20 32 2B 20 54 48 45  4E 20 4C 4F 4F 50 20 53  |P 2+ THEN LOOP S|
00000360: 57 41 50 20 44 52 4F 50  20 20 20 20 20 20 20 20  |WAP DROP        |
00000370: 20 20 4F 50 4A 54 42 4C  20 2B 20 40 20 3B 20 20  |  OPJTBL + @ ;  |
00000380: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000390: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000003A0: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000003B0: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000003C0: 44 45 43 49 4D 41 4C 20  20 2D 2D 3E 20 20 20 20  |DECIMAL  -->    |
000003D0: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000003E0: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000003F0: 20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
( CODE, ;CODE, OPERAND ) HEX            
                                        
FORTH DEFINITIONS                       
: CODE ?EXEC CREATE SMUDGE              
   [COMPILE] ASSEMBLER   !CSP LATEST    
   PFA DUP 2 - ! ;                      
                                        
( ;CODE IS ALREADY DEFINED IN THE FORTH 
  KERNAL.  JUST REDEFINE TO INVOKE THE  
  ASSEMBLER VOCABULARY )                
                                        
: ;CODE [COMPILE] ASSEMBLER             
        [COMPILE] ;CODE  ;  IMMEDIATE   
ASSEMBLER DEFINITIONS                   
                                        
                                        
( FETCH CFA OF PROPER ADDRESS MODE)     
( ADMASK OPBASE --- ADMASK OPBASE CFA ) 
                                        
: OPERAND OVER MODE @ AND 0 10 0 DO     
  SWAP DUP 1 AND IF LEAVE SWAP ELSE     
  2/ SWAP 2+ THEN LOOP SWAP DROP        
  OPJTBL + @ ;                          
                                        
DECIMAL  -->                            
                        
C64 Preview

> CLICK IMAGE PREVIEW FOR FULL MODAL