home *** CD-ROM | disk | FTP | other *** search
/ Go64! / Go64_1999-04_1999_CSW_Side_A.d64 / cheap.reference < prev    next >
Text File  |  2023-02-26  |  4KB  |  176 lines

  1. eL cHEAPO aSSEMBLER 
  2.  
  3. cHEAPaSS QUICK REFERENCE, V1.0, 2/10/99
  4.  
  5. tO USE SWAP BANK OTHER THAN BANK 1: LIST BOOT PROGRAM AND CHANGE poke.
  6.  
  7. ned
  8. ---
  9.  
  10. c=-inst    - tOGGLE INSERT MODE
  11. SHIFT-RETURN        - iNSERT A NEW LINE
  12. CURSOR KEYS, RETURN - wHAT YOU WOULD EXPECT
  13. INSERT, DELETE      - lIKEWISE
  14. SHIFT-CLEAR         - cLEAR ALL TEXT
  15. home                - sET BOOKMARK
  16. c=-home    - gOTO BOOKMARK
  17. r/s    - fORWARDS TAB (MOVE TO NEXT FIELD)
  18. SHIFT-r/s    - bACKWARDS TAB
  19. f1    - aSSEMBLE
  20. f2    - eXIT TO ml MONITOR
  21. f7                  - dISK MENU
  22.  
  23. ctrl-A    - dELETE CHARACTERS TO RIGHT OF CURSOR
  24.     -D    - dELETE LINE
  25.     -B/N  - mOVE TO BEGINNING/END OF LINE
  26.     -b/n  - mOVE TO BEGINNING/END OF TEXT
  27.     -C/X  - cOPY/CUT LINES TO CLIPBOARD
  28.     -P    - pASTE LINE FROM CLIPBOARD
  29.     -J/K  - mOVE 40 COLUMNS LEFT/RIGHT (MAX 240 COLUMNS)
  30.     -I/M  - mOVE 25 ROWS UP/DOWN
  31.     -G    - gOTO LINE #
  32.     -F/f  - fIND / fORCE NEW FIND
  33.     -L/l  - fIND LABEL
  34.     -O    - oOPS -- UNDO CHANGES TO CURRENT LINE
  35.     -=    - cOMMENT LINE OF EQUALS-SIGNS
  36.     -^    - cOMMENT LINE OF *
  37.     -LIRA - cOMMENT LINE OF -
  38.     -Z    - rE-FORMAT ALL TEXT
  39.     - <-  - eXIT TO basic (sys 822 TO RE-ENTER)
  40.  
  41.  
  42. aSSEMBLER
  43. ---------
  44.  
  45. r/s- hALT ASSEMBLY
  46. <-- tOGGLE SCREEN OUTPUT
  47.  
  48. LABELOPCODEARGUMENTCOMMENT
  49.  
  50. * fIELDS MUST BE SEPARATED BY AT LEAST ONE SPACE
  51. * lABELS AND OPCODES ARE CASE INSENSITIVE
  52. * aRGUEMENTS ARE 24-BIT
  53. * cOMMENTS
  54. ;THIS IS A COMMENT
  55. * tHIS IS ALSO A COMMENT, PROVIDED * IS IN COLUMN 1
  56.  
  57. * aLTERNATE MNEMONICS:
  58.  
  59. bccblt
  60. bcsbge
  61. dec adea
  62. inc aina
  63. jsrjsl  (lONG jsr)
  64. jmpjml  (fORCE LONG jmp)
  65.  
  66.   brk AND cop MAY SPECIFY OPTIONAL ONE-BYTE ARGUMENT.
  67.  
  68. * qUOTES: uPPER-CASE LETTERS ARE 96-127 WITHIN SINGLE QUOTES, 
  69.   192-223 WITHIN DOUBLE QUOTES; SPACE ALSO HAS HIGH BIT CLEAR/SET.
  70.  
  71.  cmp #' ';cmp #32
  72. cmp #" ";cmp #160
  73. txt 'hOLA';104 79 76 65
  74. txt "hOLA";200 79 76 65
  75.  
  76. * lABEL '*' REFERS TO ADDRESS OF CURRENT OPCODE
  77.  
  78. * lOCAL LABELS BEGIN WITH : (E.G. :loop)
  79.  
  80. * pREFIXES
  81.   iMMEDIATE MODE:
  82. oPERAND   oNE-BYTE RESULT  tWO-BYTE RESULT
  83.  
  84. #$010203040404 03
  85. #<$010203040404 03
  86. #>$010203040303 02
  87. #^$010203040202 01
  88.  
  89.   (eL cHEAPO CURRENTLY ONLY 24-BITS, NOT 32-BIT)
  90.  
  91.   aBSOLUTE MODE:
  92.  
  93. <fORCE ONE BYTE (DIRECT A.K.A. ZERO PAGE)
  94. !fORCE TWO BYTES (ABSOLUTE)
  95. >fORCE THREE BYTES (ABS LONG)
  96.  
  97.   eXAMPLE: lda $0203 AND lda !$010203 ARE EQUIVALENT.
  98.  
  99. * pSEUDO-oPCODES
  100.  
  101. org ADDRESSsET PROGRAM orIgINorg $c000
  102. orgrE-org
  103. *=  *aLTERNATE SYNTAX *= $c000
  104.  
  105. equ OR =equATE LABEL chrout = $ffd2
  106.  
  107. dfb OR dbdEfINE bYTEdfb 100,$64,%1100100
  108.  
  109. da OR dw dEFINE aDDRESS da $ffd2;d2 ff
  110.  
  111. dla dEFINE lONG aDDRESSda $0102;00 01 02
  112.  
  113. hexdEFINE HEX BYTES hex 20d2ff;20 d2 ff
  114.  
  115. dsdEFINE sTORAGEds 5;00 00 00 00 00
  116. ds ^ fILL TO PAGE BOUNDARY   ds ^,$3d;$3d TO BOUNDARY
  117.  
  118. txttExttxt 'hOLA';68 4f 4c 41
  119. txt "hOLA",0D   ;c8 4f 4c 41 0d
  120. do ARGcONDITIONAL ASSEMBLYdo 0;dON'T ASSEMBLE
  121. elserEVERSE LAST do
  122. fineND do/else CONSTRUCTS
  123.  
  124. put 'FILE'aSSEMBLE FROM DISKput 'TEST,S';seq FILE
  125. put 'TEST',9;prg FILE, DEV 9
  126.  
  127. prtrEDIRECT SCREEN OUTPUT TO PRINTER
  128. prt 'FILE'rEDIRECT SCREEN OUTPUT TO DISK FILE
  129.  
  130. reg #ARGsET 8/16-BIT ASSEMBLY (SET STATUS REG)
  131. reg on  aUTOMATICALLY FOLLOW rep AND sep (DEFAULT)
  132. reg offdON'T TRACK rep AND sep
  133. nOTE: 8/16 TRACKING DOESN'T TRACK e!
  134.  
  135. ajAM
  136. ----
  137.  
  138. A ADRaSSEMBLE.  uSE !X !M !! TO TOGGLE x AND m BITS
  139. DdISASSEMBLE
  140. <-bACKWARDS-DISASSEMBLE
  141. LIRAtOGGLE rep/sep TRACKING
  142. , ADR BYTE1 ... rE-DISASSEMBLE
  143. P ADR1 ADR2dISASSEMBLE RANGE
  144. R/EdISPLAY REGS/ALTERNATE REGS
  145. M ADR1 [ADR2]dISPLAY MEMORY [RANGE]
  146. I ADR1 [ADR2]dISPLAY MEMORY+TEXT [RANGE]
  147. H ADR1 ADR2 DATAhUNT.  dATA IS EITHER BYTES OR "STRING"
  148. F ADR1 ADR2 BYTEfILL
  149. T ADR1 ADR2 DESTtRANSFER
  150. N ADR1 ADR2 ADR3 DESTrELOCATE (ADR1=START, ADR2=END, ADR3=END VARS)
  151. WwHERE AM i? -- USE TO RELOCATE jAMMON
  152. ;^:aLTER REGS
  153. L "NAME",DEV[,ADR]lOAD
  154. S "NAME",DEV,ADR1,ADR2sAVE
  155. B ADRsET BREAKPOINT
  156. G [ADR]gO
  157. Z [ADR]zINGLE zTEP (zET BRKPOINT UND GO!)
  158. XeXIT TO eL cHEAPO aSSEMBLER
  159. ?lIST COMMAND KEYS
  160.  
  161. mEMORY mAP
  162. ----------
  163.  
  164. $0334/$0335ml MONITOR VECTOR
  165. $0336-$0338jmp TO EDITOR
  166.  
  167. $0800-sOURCE CODE
  168. $8400-$94ffjAMMON
  169. $9500-$95fftEXT BUFFER
  170. $9600-$bfffcHEAPaSS
  171. $c000-$fffflABEL/VARIABLE TABLE (TEMPORARY)
  172.  
  173. O cODE IS ASSEMBLED TO SWAP BANK (DEFAULT = BANK ONE)
  174. O bANK 0 SWAPPED ON EXIT TO MONITOR/basic, CODE IS TRANSLATED
  175.   - iF MACHINE CRASHES, LOOK FOR TEXT AT $XX0800 WHERE XX=SWAP BANK!
  176.