home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Go64!
/
Go64_1999-04_1999_CSW_Side_A.d64
/
cheap.reference
< prev
next >
Wrap
Text File
|
2023-02-26
|
4KB
|
176 lines
eL cHEAPO aSSEMBLER
cHEAPaSS QUICK REFERENCE, V1.0, 2/10/99
tO USE SWAP BANK OTHER THAN BANK 1: LIST BOOT PROGRAM AND CHANGE poke.
ned
---
c=-inst - tOGGLE INSERT MODE
SHIFT-RETURN - iNSERT A NEW LINE
CURSOR KEYS, RETURN - wHAT YOU WOULD EXPECT
INSERT, DELETE - lIKEWISE
SHIFT-CLEAR - cLEAR ALL TEXT
home - sET BOOKMARK
c=-home - gOTO BOOKMARK
r/s - fORWARDS TAB (MOVE TO NEXT FIELD)
SHIFT-r/s - bACKWARDS TAB
f1 - aSSEMBLE
f2 - eXIT TO ml MONITOR
f7 - dISK MENU
ctrl-A - dELETE CHARACTERS TO RIGHT OF CURSOR
-D - dELETE LINE
-B/N - mOVE TO BEGINNING/END OF LINE
-b/n - mOVE TO BEGINNING/END OF TEXT
-C/X - cOPY/CUT LINES TO CLIPBOARD
-P - pASTE LINE FROM CLIPBOARD
-J/K - mOVE 40 COLUMNS LEFT/RIGHT (MAX 240 COLUMNS)
-I/M - mOVE 25 ROWS UP/DOWN
-G - gOTO LINE #
-F/f - fIND / fORCE NEW FIND
-L/l - fIND LABEL
-O - oOPS -- UNDO CHANGES TO CURRENT LINE
-= - cOMMENT LINE OF EQUALS-SIGNS
-^ - cOMMENT LINE OF *
-LIRA - cOMMENT LINE OF -
-Z - rE-FORMAT ALL TEXT
- <- - eXIT TO basic (sys 822 TO RE-ENTER)
aSSEMBLER
---------
r/s- hALT ASSEMBLY
<-- tOGGLE SCREEN OUTPUT
LABELOPCODEARGUMENTCOMMENT
* fIELDS MUST BE SEPARATED BY AT LEAST ONE SPACE
* lABELS AND OPCODES ARE CASE INSENSITIVE
* aRGUEMENTS ARE 24-BIT
* cOMMENTS
;THIS IS A COMMENT
* tHIS IS ALSO A COMMENT, PROVIDED * IS IN COLUMN 1
* aLTERNATE MNEMONICS:
bccblt
bcsbge
dec adea
inc aina
jsrjsl (lONG jsr)
jmpjml (fORCE LONG jmp)
brk AND cop MAY SPECIFY OPTIONAL ONE-BYTE ARGUMENT.
* qUOTES: uPPER-CASE LETTERS ARE 96-127 WITHIN SINGLE QUOTES,
192-223 WITHIN DOUBLE QUOTES; SPACE ALSO HAS HIGH BIT CLEAR/SET.
cmp #' ';cmp #32
cmp #" ";cmp #160
txt 'hOLA';104 79 76 65
txt "hOLA";200 79 76 65
* lABEL '*' REFERS TO ADDRESS OF CURRENT OPCODE
* lOCAL LABELS BEGIN WITH : (E.G. :loop)
* pREFIXES
iMMEDIATE MODE:
oPERAND oNE-BYTE RESULT tWO-BYTE RESULT
#$010203040404 03
#<$010203040404 03
#>$010203040303 02
#^$010203040202 01
(eL cHEAPO CURRENTLY ONLY 24-BITS, NOT 32-BIT)
aBSOLUTE MODE:
<fORCE ONE BYTE (DIRECT A.K.A. ZERO PAGE)
!fORCE TWO BYTES (ABSOLUTE)
>fORCE THREE BYTES (ABS LONG)
eXAMPLE: lda $0203 AND lda !$010203 ARE EQUIVALENT.
* pSEUDO-oPCODES
org ADDRESSsET PROGRAM orIgINorg $c000
orgrE-org
*= *aLTERNATE SYNTAX *= $c000
equ OR =equATE LABEL chrout = $ffd2
dfb OR dbdEfINE bYTEdfb 100,$64,%1100100
da OR dw dEFINE aDDRESS da $ffd2;d2 ff
dla dEFINE lONG aDDRESSda $0102;00 01 02
hexdEFINE HEX BYTES hex 20d2ff;20 d2 ff
dsdEFINE sTORAGEds 5;00 00 00 00 00
ds ^ fILL TO PAGE BOUNDARY ds ^,$3d;$3d TO BOUNDARY
txttExttxt 'hOLA';68 4f 4c 41
txt "hOLA",0D ;c8 4f 4c 41 0d
do ARGcONDITIONAL ASSEMBLYdo 0;dON'T ASSEMBLE
elserEVERSE LAST do
fineND do/else CONSTRUCTS
put 'FILE'aSSEMBLE FROM DISKput 'TEST,S';seq FILE
put 'TEST',9;prg FILE, DEV 9
prtrEDIRECT SCREEN OUTPUT TO PRINTER
prt 'FILE'rEDIRECT SCREEN OUTPUT TO DISK FILE
reg #ARGsET 8/16-BIT ASSEMBLY (SET STATUS REG)
reg on aUTOMATICALLY FOLLOW rep AND sep (DEFAULT)
reg offdON'T TRACK rep AND sep
nOTE: 8/16 TRACKING DOESN'T TRACK e!
ajAM
----
A ADRaSSEMBLE. uSE !X !M !! TO TOGGLE x AND m BITS
DdISASSEMBLE
<-bACKWARDS-DISASSEMBLE
LIRAtOGGLE rep/sep TRACKING
, ADR BYTE1 ... rE-DISASSEMBLE
P ADR1 ADR2dISASSEMBLE RANGE
R/EdISPLAY REGS/ALTERNATE REGS
M ADR1 [ADR2]dISPLAY MEMORY [RANGE]
I ADR1 [ADR2]dISPLAY MEMORY+TEXT [RANGE]
H ADR1 ADR2 DATAhUNT. dATA IS EITHER BYTES OR "STRING"
F ADR1 ADR2 BYTEfILL
T ADR1 ADR2 DESTtRANSFER
N ADR1 ADR2 ADR3 DESTrELOCATE (ADR1=START, ADR2=END, ADR3=END VARS)
WwHERE AM i? -- USE TO RELOCATE jAMMON
;^:aLTER REGS
L "NAME",DEV[,ADR]lOAD
S "NAME",DEV,ADR1,ADR2sAVE
B ADRsET BREAKPOINT
G [ADR]gO
Z [ADR]zINGLE zTEP (zET BRKPOINT UND GO!)
XeXIT TO eL cHEAPO aSSEMBLER
?lIST COMMAND KEYS
mEMORY mAP
----------
$0334/$0335ml MONITOR VECTOR
$0336-$0338jmp TO EDITOR
$0800-sOURCE CODE
$8400-$94ffjAMMON
$9500-$95fftEXT BUFFER
$9600-$bfffcHEAPaSS
$c000-$fffflABEL/VARIABLE TABLE (TEMPORARY)
O cODE IS ASSEMBLED TO SWAP BANK (DEFAULT = BANK ONE)
O bANK 0 SWAPPED ON EXIT TO MONITOR/basic, CODE IS TRANSLATED
- iF MACHINE CRASHES, LOOK FOR TEXT AT $XX0800 WHERE XX=SWAP BANK!