From 6d9cc4048c0ad4c5073b4d7f193187a992c03847 Mon Sep 17 00:00:00 2001 From: Joshua Bell Date: Sat, 2 Sep 2017 20:56:08 -0700 Subject: [PATCH] hscroll/vscroll window params --- desk.acc/show.text.file/a2d.inc | 9 ++++---- desk.acc/show.text.file/stf.list | 38 ++++++++++++++++--------------- desk.acc/show.text.file/stf.o | Bin 22473 -> 22478 bytes desk.acc/show.text.file/stf.s | 29 ++++++++++++----------- 4 files changed, 40 insertions(+), 36 deletions(-) diff --git a/desk.acc/show.text.file/a2d.inc b/desk.acc/show.text.file/a2d.inc index e050e53..26413d5 100644 --- a/desk.acc/show.text.file/a2d.inc +++ b/desk.acc/show.text.file/a2d.inc @@ -73,9 +73,9 @@ A2D_CREATE_WINDOW := $38 ;; .addr title ;; .byte hscroll bits: 7 = enable, 6 = show thumb, 0 = show track ;; .byte vscroll - ;; .byte ??? - ;; .byte ??? - ;; .byte ??? + ;; .byte hscroll_max + ;; .byte hscroll_pos + ;; .byte vscroll_max ;; .byte vscroll_pos ;; .byte ??? ;; .byte ??? @@ -87,8 +87,7 @@ A2D_CREATE_WINDOW := $38 ;; .word height A2D_DESTROY_WINDOW := $39 - ;; .byte id - ;; .byte ??? + ;; pass the same block as passed to A2D_CREATE_WINDOW A2D_GET_MOUSE := $40 ;; .word x diff --git a/desk.acc/show.text.file/stf.list b/desk.acc/show.text.file/stf.list index 25ba226..233660a 100644 --- a/desk.acc/show.text.file/stf.list +++ b/desk.acc/show.text.file/stf.list @@ -150,9 +150,9 @@ Current file: stf.s 000800 2 ;; .addr title 000800 2 ;; .byte hscroll bits: 7 = enable, 6 = show thumb, 0 = show track 000800 2 ;; .byte vscroll -000800 2 ;; .byte ??? -000800 2 ;; .byte ??? -000800 2 ;; .byte ??? +000800 2 ;; .byte hscroll_max +000800 2 ;; .byte hscroll_pos +000800 2 ;; .byte vscroll_max 000800 2 ;; .byte vscroll_pos 000800 2 ;; .byte ??? 000800 2 ;; .byte ??? @@ -164,8 +164,7 @@ Current file: stf.s 000800 2 ;; .word height 000800 2 000800 2 A2D_DESTROY_WINDOW := $39 -000800 2 ;; .byte id -000800 2 ;; .byte ??? +000800 2 ;; pass the same block as passed to A2D_CREATE_WINDOW 000800 2 000800 2 A2D_GET_MOUSE := $40 000800 2 ;; .word x @@ -578,16 +577,19 @@ Current file: stf.s 000994 1 64 id: .byte window_id ; window identifier 000995 1 02 flags: .byte A2D_CWF_ADDCLOSE; window flags (2=include close box) 000996 1 00 10 title: .addr $1000 ; overwritten to point at filename +000998 1 000998 1 00 hscroll:.byte A2D_CWS_NOSCROLL 000999 1 C1 vscroll:.byte A2D_CWS_SCROLL_NORMAL -00099A 1 -00099A 1 20 L099A: .byte $20 ; hscroll? -00099B 1 00 FF L099B: .byte $00,$FF ; more hscroll? -00099D 1 +00099A 1 hscroll_max: +00099A 1 20 .byte 32 +00099B 1 hscroll_pos: +00099B 1 00 .byte 0 +00099C 1 vscroll_max: +00099C 1 FF .byte 255 00099D 1 vscroll_pos: 00099D 1 00 .byte 0 00099E 1 -00099E 1 ;; unreferenced ? +00099E 1 ;; ??? 00099E 1 00 00 C8 00 .byte $00,$00,$C8,$00,$33,$00 0009A2 1 33 00 0009A4 1 @@ -1099,7 +1101,7 @@ Current file: stf.s 000CE7 1 000CE7 1 .proc on_hscroll_after_click 000CE7 1 A2 02 ldx #2 -000CE9 1 AD 9A 09 lda window_params::L099A +000CE9 1 AD 9A 09 lda window_params::hscroll_max 000CEC 1 4C 02 0D jmp hscroll_common 000CEF 1 .endproc 000CEF 1 @@ -1111,7 +1113,7 @@ Current file: stf.s 000CF6 1 000CF6 1 .proc on_hscroll_right_click 000CF6 1 A2 01 ldx #1 -000CF8 1 AD 9A 09 lda window_params::L099A +000CF8 1 AD 9A 09 lda window_params::hscroll_max 000CFB 1 4C 02 0D jmp hscroll_common 000CFE 1 .endproc 000CFE 1 @@ -1124,23 +1126,23 @@ Current file: stf.s 000D02 1 .proc hscroll_common 000D02 1 8D 0C 0D sta compare+1 000D05 1 8E 15 0D stx delta+1 -000D08 1 AD 9B 09 loop: lda window_params::L099B +000D08 1 AD 9B 09 loop: lda window_params::hscroll_pos 000D0B 1 C9 0A compare:cmp #$0A ; self-modified 000D0D 1 D0 01 bne continue 000D0F 1 60 rts 000D10 1 continue: 000D10 1 18 clc -000D11 1 AD 9B 09 lda window_params::L099B +000D11 1 AD 9B 09 lda window_params::hscroll_pos 000D14 1 69 01 delta: adc #1 ; self-modified 000D16 1 30 0D bmi overflow -000D18 1 CD 9A 09 cmp window_params::L099A +000D18 1 CD 9A 09 cmp window_params::hscroll_max 000D1B 1 F0 0A beq store 000D1D 1 90 08 bcc store -000D1F 1 AD 9A 09 lda window_params::L099A +000D1F 1 AD 9A 09 lda window_params::hscroll_max 000D22 1 4C 27 0D jmp store 000D25 1 overflow: 000D25 1 A9 00 lda #0 -000D27 1 8D 9B 09 store: sta window_params::L099B +000D27 1 8D 9B 09 store: sta window_params::hscroll_pos 000D2A 1 20 5E 0D jsr L0D5E 000D2D 1 20 D1 0D jsr update_hscroll 000D30 1 20 30 0E jsr draw_content @@ -1176,7 +1178,7 @@ Current file: stf.s 000D5E 1 000D5E 1 ;;; only used from hscroll code? 000D5E 1 .proc L0D5E -000D5E 1 AD 9B 09 lda window_params::L099B +000D5E 1 AD 9B 09 lda window_params::hscroll_pos 000D61 1 20 EC 10 jsr L10EC 000D64 1 18 clc 000D65 1 A5 06 lda $06 diff --git a/desk.acc/show.text.file/stf.o b/desk.acc/show.text.file/stf.o index f48e2f258a91db4213b0d7607fbf23f6eda44558..7286126b80efe2544e14afdee6b4fd15231364b0 100644 GIT binary patch literal 22478 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 Jnw=d4{}&wUy8r+H literal 22473 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 RR)@5orzf=Ul9?F<{}(p?y0-uT diff --git a/desk.acc/show.text.file/stf.s b/desk.acc/show.text.file/stf.s index c632591..6519a45 100644 --- a/desk.acc/show.text.file/stf.s +++ b/desk.acc/show.text.file/stf.s @@ -305,16 +305,19 @@ len: .byte 0 ; length id: .byte window_id ; window identifier flags: .byte A2D_CWF_ADDCLOSE; window flags (2=include close box) title: .addr $1000 ; overwritten to point at filename + hscroll:.byte A2D_CWS_NOSCROLL vscroll:.byte A2D_CWS_SCROLL_NORMAL - -L099A: .byte $20 ; hscroll? -L099B: .byte $00,$FF ; more hscroll? - +hscroll_max: + .byte 32 +hscroll_pos: + .byte 0 +vscroll_max: + .byte 255 vscroll_pos: .byte 0 - ;; unreferenced ? + ;; ??? .byte $00,$00,$C8,$00,$33,$00 width: .word default_width @@ -812,7 +815,7 @@ end: rts .proc on_hscroll_after_click ldx #2 - lda window_params::L099A + lda window_params::hscroll_max jmp hscroll_common .endproc @@ -824,7 +827,7 @@ end: rts .proc on_hscroll_right_click ldx #1 - lda window_params::L099A + lda window_params::hscroll_max jmp hscroll_common .endproc @@ -837,23 +840,23 @@ end: rts .proc hscroll_common sta compare+1 stx delta+1 -loop: lda window_params::L099B +loop: lda window_params::hscroll_pos compare:cmp #$0A ; self-modified bne continue rts continue: clc - lda window_params::L099B + lda window_params::hscroll_pos delta: adc #1 ; self-modified bmi overflow - cmp window_params::L099A + cmp window_params::hscroll_max beq store bcc store - lda window_params::L099A + lda window_params::hscroll_max jmp store overflow: lda #0 -store: sta window_params::L099B +store: sta window_params::hscroll_pos jsr L0D5E jsr update_hscroll jsr draw_content @@ -887,7 +890,7 @@ store: sta window_params::L099B ;;; only used from hscroll code? .proc L0D5E - lda window_params::L099B + lda window_params::hscroll_pos jsr L10EC clc lda $06