84 lines
1.8 KiB
Plaintext
84 lines
1.8 KiB
Plaintext
;;********************************************************************************
|
|
;; @module system
|
|
;; @ingroup system
|
|
;; @details
|
|
;; Variable definitions for the current hardware setup
|
|
;;********************************************************************************
|
|
|
|
.ifndef INCLUDE_SYSTEM
|
|
INCLUDE_SYSTEM = 1
|
|
|
|
;;********************************************************************************
|
|
;; @page system_stuff More System stuff
|
|
;; @subsubsection ram_reserved Reserved RAM addresses
|
|
;; - 00-0f - free use (Z0-Z15)
|
|
;; - 10-1f - arguments / return values (ARG0-ARG15)
|
|
;; - 20-ff - free
|
|
;; - 0100 - 01FF Stack
|
|
;; - 0200,0201 keypad keybuffer write/read pointer
|
|
;; - 0202-02ff keypad keybuffer
|
|
;; - 0300 lcd character counter
|
|
;; @ingroup system
|
|
;;********************************************************************************
|
|
|
|
.include "io_W65C22.h65"
|
|
.include "utility.h65"
|
|
.importzp Z0,Z1,Z2,Z3,Z4,Z5,Z6,Z7,Z8,Z9,Z10,Z11,Z12,Z13,Z14,Z15
|
|
.importzp ARG0,ARG1,ARG2,ARG3,ARG4,ARG5,ARG6,ARG7,ARG8,ARG9,ARG10,ARG11,ARG12,ARG13,ARG14,ARG15
|
|
|
|
; Z0 = $0
|
|
; Z1 = $1
|
|
; Z2 = $2
|
|
; Z3 = $3
|
|
; Z4 = $4
|
|
; Z5 = $5
|
|
; Z6 = $6
|
|
; Z7 = $7
|
|
; Z8 = $8
|
|
; Z9 = $9
|
|
; Z10 = $a
|
|
; Z11 = $b
|
|
; Z12 = $c
|
|
; Z13 = $d
|
|
; Z14 = $e
|
|
; Z15 = $f
|
|
; ; ARGUMENTS
|
|
; ; a,x,y can also be used
|
|
; ARG0 = $10
|
|
; ARG1 = $11
|
|
; ARG2 = $12
|
|
; ARG3 = $13
|
|
; ARG4 = $14
|
|
; ARG5 = $15
|
|
; ARG6 = $16
|
|
; ARG7 = $17
|
|
; ARG8 = $18
|
|
; ARG9 = $19
|
|
; ARG10 = $1a
|
|
; ARG11 = $1b
|
|
; ARG12 = $1c
|
|
; ARG13 = $1d
|
|
; ARG14 = $1e
|
|
; ARG15 = $1f
|
|
|
|
|
|
; RETURN VALUE
|
|
.segment "VIA1"
|
|
; IO1: .res 16
|
|
IO1 = $6000
|
|
|
|
.segment "VIA2"
|
|
; IO2: .res 16
|
|
IO2 = $7000
|
|
|
|
; charmappings for the lcd
|
|
; .charmap 'ü', $F5
|
|
; .charmap 'Ü', $F5
|
|
; .charmap 'ö', $EF
|
|
; .charmap 'Ö', $EF
|
|
; .charmap 'ä', $E1
|
|
; .charmap 'Ä', $E1
|
|
; .charmap 'ß', $E2
|
|
|
|
.endif ; include guard
|