DeskTop: minimize 'exports'

This commit is contained in:
Joshua Bell 2018-01-04 21:05:54 -08:00
parent 07f9e5a733
commit 9bb9608099
2 changed files with 370 additions and 384 deletions

View File

@ -30,6 +30,7 @@ JUMP_TABLE_CUR_WATCH := $403C ; Changes mouse cursor to watch
JUMP_TABLE_3F := $403F ; ???
;;; ==================================================
;;; API Calls
;;; NOTE: Some of these are used by Desk Accessories
@ -49,9 +50,6 @@ DESKTOP_REDRAW_ICONS := $0C ; Repaints desktop icons
;; $0D used at start of drag-select
;; $09 at end (then another $0D)
;;; ==================================================
;;; Macros
;;; Call a DESKTOP entry point:
;;; DESKTOP_CALL n - params is $0000
;;; DESKTOP_CALL n, params_addr
@ -78,7 +76,7 @@ DESKTOP_REDRAW_ICONS := $0C ; Repaints desktop icons
;;; These are used by the MAIN (and sometimes AUX) halves of DeskTop itself,
;;; since this bank can be accessed from both AUX and MAIN.
;;; TODO: move into "internal" include file
;; Listed here as they are used by weird DeskTop block in A2D space
;; Relay for main>aux A2D call (Y=call, X,A=params addr)
A2D_RELAY := $D000
@ -95,48 +93,8 @@ A2D_RELAY := $D000
jsr A2D_RELAY
.endmacro
;; SET_POS with params at (X,A) followed by DRAW_TEXT call
SETPOS_RELAY := $D01C
.macro SETPOS_RELAY_CALL addr
lda #<addr
ldx #>addr
jsr SETPOS_RELAY
.endmacro
;; Relay for main>aux DESKTOP call (Y=call, X,A=params addr)
DESKTOP_RELAY := $D040
.macro DESKTOP_RELAY_CALL call, addr
ldy #(call)
.if .paramcount > 1
lda #<(addr)
ldx #>(addr)
.else
lda #0
ldx #0
.endif
jsr DESKTOP_RELAY
.endmacro
DESKTOP_FIND_SPACE := $D05E ; Find space in AUX $1F80 table
DESKTOP_FREE_SPACE := $D082 ; Free space in AUX $1F80 table
DESKTOP_COPY_FROM_BUF := $D096 ; Copy from buffer to blocks around $1B00
DESKTOP_COPY_TO_BUF := $D09A ; Copy to buffer from blocks around $1B00
DESKTOP_ASSIGN_STATE := $D108 ; Assign active state to DESKTOP_WINID window
DESKTOP_AUXLOAD := $D13E ; Load AUX (X,A) into A
DESKTOP_SHOW_ALERT0 := $D154 ; Show alert 0
DESKTOP_SHOW_ALERT := $D156 ; Show alert in X
;;; Data fields providing parame for the above
DESKTOP_BUFNUM := $DE9F ; Buffer num for DESKTOP_COPY_*_BUF
DESKTOP_WINID := $EC25 ; Window ID for some operations ???
;;; A handful of entry points in MAIN are referenced from AUX code
DESKTOP_MAIN_PUSH_ADDRS := $87F6 ; Push two words from stack from $6/$8
DESKTOP_MAIN_POP_ADDRS := $8813 ; Pop two words from stack to $6/$8
;;; ==================================================
;;; DeskTop Internals

File diff suppressed because it is too large Load Diff