home *** CD-ROM | disk | FTP | other *** search
/ 8bitfiles.net/archives / archives.tar / archives / genie-commodore-file-library / CMDSupport / GEOSMAC.CVT (.txt) < prev    next >
Encoding:
GEOS ConVerT  |  2019-04-13  |  4.0 KB  |  229 lines

  1. geosMac
  2. SEQ formatted GEOS file V1.0
  3. Star NX-10
  4. OP V2.0 or higherR
  5. GEOSSYM
  6. BLASTER'S CONVERTER V2.5
  7. GEOWRITE 128
  8. geosSym.2
  9. Write Image V1.1
  10. geoWrite    V1.1
  11. GEOPROGRAMMER sample file.
  12. .macro LoadB dest,value
  13.  lda #value
  14.  sta dest
  15. .endm
  16. .macro LoadW dest,value
  17.  lda #](value)
  18.  sta dest+1
  19.  lda #[(value)
  20.  sta dest+0
  21. .endm
  22. .macro MoveB source,dest
  23.  lda source
  24.  sta dest
  25. .endm
  26. .macro MoveW source,dest
  27.  lda source+1
  28.  sta dest+1
  29.  lda source+0
  30.  sta dest+0
  31. .endm
  32. .macro add source
  33.  adc source
  34. .endm
  35. .macro AddB source,dest
  36.  lda source
  37.  adc dest
  38.  sta dest
  39. .endm
  40. .macro AddW source,dest
  41.  lda source
  42.  adc dest+0
  43.  sta dest+0
  44.  lda source+1
  45.  adc dest+1
  46.  sta dest+1
  47. .endm
  48. .macro AddVB value,dest
  49.  lda dest
  50.  adc #value
  51.  sta dest
  52. .endm
  53. .macro AddVW value,dest
  54.  lda #[(value)
  55.  adc dest+0
  56.  sta dest+0
  57. .if (value >= 0) && (value <= 255)
  58.  bcc noInc
  59.  inc dest+1
  60. noInc:
  61. .else
  62.  lda #](value)
  63.  adc dest+0
  64.  sta dest+0
  65. .if (value >= 0) && (value <= 255)
  66.  bcc noInc
  67.  inc dest+1
  68. noInc:
  69. .else
  70.  lda #](value)
  71.  adc dest+1
  72.  sta dest+1
  73. .endif
  74. .endm
  75. .macro sub source
  76.  sbc source
  77. .endm
  78. .macro SubB source,dest
  79.  lda dest
  80.  sbc source
  81.  sta dest
  82. .endm
  83. .macro SubW source,dest
  84.  lda dest+0
  85.  sbc source+0
  86.  sta dest+0
  87.  lda dest+1
  88.  sbc source+1
  89.  sta dest+1
  90. .endm
  91. .macro CmpB source,dest
  92.  lda source
  93.  cmp dest
  94. .endm
  95. .macro CmpBI source,immed
  96.  lda source
  97.  cmp #immed
  98. .endm
  99. .macro CmpW source,dest
  100.  lda source+1
  101.  cmp dest+1
  102.  bne done
  103.  lda source+0
  104.  cmp dest+0
  105. done:
  106. .endm
  107. .macro CmpWI source,immed
  108.  lda source+1
  109.  cmp #](immed)
  110.  bne done
  111.  lda source+0
  112.  cmp #[(immed)
  113. done:
  114. .endm
  115. .macro PushB source
  116.  lda source
  117.  bne done
  118.  lda source+0
  119.  cmp #[(immed)
  120. done:
  121. .endm
  122. .macro PushB source
  123.  lda source
  124. .endm
  125. .macro PushW source
  126.  lda source+1
  127.  lda source+0
  128. .endm
  129. .macro PopB dest
  130.  sta dest
  131. .endm
  132. .macro PopW dest
  133.  sta dest+0
  134.  sta dest+1
  135. .endm
  136. .macro bra addr
  137.  bvc addr
  138. .endm
  139. .macro bge addr
  140.  bcs addr
  141. .endm
  142. .macro blt addr
  143.  bcc addr
  144. .endm
  145. .macro bgt addr
  146.  beq skip
  147.  bcs addr
  148. skip:
  149. .endm
  150. .macro ble addr
  151.  bcc addr
  152.  beq addr
  153. .endm
  154. .macro smb bitNumber,dest
  155.  lda #(1 << bitNumber)
  156.  ora dest
  157.  sta dest
  158. .endm
  159. .macro smbf bitNumber,dest
  160.  lda #(1 << bitNumber)
  161.  ora dest
  162.  sta dest
  163. .endm
  164. .macro rmb bitNumber,dest
  165.  lda #[~(1 << bitNumber)
  166.  and dest
  167.  sta dest
  168. .endm
  169. .macro rmbf bitNu
  170. .endm
  171. .macro smbf bitNumber,dest
  172.  lda #(1 << bitNumber)
  173.  ora dest
  174.  sta dest
  175. .endm
  176. .macro rmb bitNumber,dest
  177.  lda #[~(1 << bitNumber)
  178.  and dest
  179.  sta dest
  180. .endm
  181. .macro rmbf bitNumber,dest
  182.  lda #[~(1 << bitNumber)
  183.  and dest
  184.  sta dest
  185. .endm
  186. .macro bbs bitNumber,source,addr
  187.  lda source
  188.  and #(1 << bitNumber)
  189.  beq nobranch
  190.  bra addr
  191. nobranch:
  192. .endm
  193. .macro bbsf bitNumber,source,addr
  194. .if (bitNumber = 7)
  195.  bit source
  196.  bmi addr
  197. .elif (bitNumber = 6)
  198.  bit source
  199.  bvs addr
  200. .else
  201.  lda source
  202.  and #(1 << bitNumber)
  203.  bne addr
  204. .endif
  205. .endm
  206. .macro bbr bitNumber,source,addr
  207.  lda source
  208.  and #(1 << bitNumber)
  209.  bne nobranch
  210.  bra addr
  211. nobranch:
  212. .endm
  213.  bra addr
  214. nobranch:
  215. .endm
  216. .macro bbrf bitNumber,source,addr
  217. .if (bitNumber = 7)
  218.  bit source
  219.  bpl addr
  220. .elif (bitNumber = 6)
  221.  bit source
  222.  bvc addr
  223. .else
  224.  lda source
  225.  and #(1 << bitNumber)
  226.  beq addr
  227. .endif
  228. .endm
  229.