home *** CD-ROM | disk | FTP | other *** search
/ World of A1200 / World_Of_A1200.iso / programs / develop / as65 / demo / d / macros.d < prev    next >
Text File  |  1995-02-27  |  2KB  |  144 lines

  1. ;**************************************************************************
  2. ;
  3. ; Filename : MACROS.D
  4. ; -------------------
  5. ;
  6. ; (c) 1990 by Thomas Lehmann
  7. ;
  8. ;
  9. ; Jackophone V5.00
  10. ;
  11. ;
  12. ; Macrodefinitionen
  13. ;
  14. ;
  15. ;**************************************************************************
  16.  
  17.  
  18.     ; ----------------------------------------
  19.     ; Macro für Testzwecke, Main Prg. anhalten
  20.     ; ----------------------------------------
  21. sleep    macroseg
  22.  
  23.     pha
  24.     lda #255
  25.     jsr task_delay
  26.     pla
  27.  
  28.     endmacro
  29.  
  30.  
  31.  
  32.  
  33.     ; ---------------------
  34.     ; Macro für TXY, X -> Y
  35.     ; ---------------------
  36. txy    macroseg
  37.  
  38.     phx
  39.     ply
  40.  
  41.     endmacro
  42.  
  43.  
  44.     ; ---------------------
  45.     ; Macro für TYX, Y -> X
  46.     ; ---------------------
  47. tyx    macroseg
  48.  
  49.     phy
  50.     plx
  51.  
  52.     endmacro
  53.  
  54.  
  55.  
  56.  
  57.     ; ----------------------------------------------
  58.     ; Macro zum Erzeugen der Tastenberechtigung, BTA
  59.     ; ----------------------------------------------
  60.  
  61. key    macroseg
  62.  
  63.     byte !1        ; Tastenwert bis
  64.     shift "!2"    ; Tastentext
  65.  
  66.     endmacro
  67.  
  68.  
  69.  
  70.     ; -------------------------------------------
  71.     ; Macro zum erhöhen eines 16BIT Pointers um 1
  72.     ; ?inc16 adr(2)
  73.     ; -------------------------------------------
  74.  
  75. inc16    macro
  76.  
  77.     inc !1        ; low Byte +1
  78.     bne end        ; kein Überlauf
  79.  
  80.     inc !1+1    ; high Byte nachführen
  81. end
  82.     endmacro
  83.  
  84.  
  85.  
  86.     ; --------------------------------------------------
  87.     ; Macro zum beliebiegen erhöhen eines 16BIT Pointers
  88.     ; ?add16 adr(2),wert
  89.     ; --------------------------------------------------
  90.  
  91. add16    macro
  92.  
  93.     lda !1        ; low Byte laden
  94.     clc
  95.     adc #!2        ; Wert addieren
  96.     bcc end        ; kein Überlauf
  97.  
  98.     inc !1+1    ; high Byte nachführen
  99. end    sta !1        ; aufaddierten Wert ablegen
  100.     endmacro
  101.  
  102.  
  103.     ; -----------------------------------------------------
  104.     ; Macro zum beliebiegen verringern eines 16BIT Pointers
  105.     ; ?sub16 adr(2),wert
  106.     ; -----------------------------------------------------
  107.  
  108. sub16    macro
  109.  
  110.     lda !1        ; low Byte laden
  111.     sec
  112.     sbc #!2        ; Wert addieren
  113.     bcs end        ; kein Überlauf
  114.  
  115.     dec !1+1    ; high Byte nachführen
  116. end    sta !1        ; substrahierten Wert ablegen
  117.     endmacro
  118.  
  119.  
  120.  
  121.     ; -------------------------------------------------------------------
  122.     ; Macro`s um deutsche Umlaute zu erzeugen, funktioniert nur nicht ???
  123.     ; -------------------------------------------------------------------
  124.  
  125. dsp_ae    macro
  126.     byte $e1    ; Display Code für "ä"
  127.     endmacro
  128.  
  129. dsp_oe    macro
  130.     byte $ef    ; Display Code für "ö"
  131.     endmacro
  132.  
  133. dsp_ue    macro
  134.     byte $f5    ; Display Code für "ü"
  135.     endmacro
  136.  
  137. dsp_ss    macro
  138.     byte $e2    ; Display Code für "ß"
  139.     endmacro
  140.  
  141.  
  142.  
  143.  
  144.