mirror of
https://github.com/deater/dos33fsprogs.git
synced 2024-06-26 00:29:29 +00:00
peasant: box now paramaterizable
This commit is contained in:
parent
4246c3d5cc
commit
f62cab9038
|
@ -23,7 +23,22 @@ cottage:
|
||||||
jsr hgr_put_string
|
jsr hgr_put_string
|
||||||
|
|
||||||
|
|
||||||
|
lda #0
|
||||||
|
sta BOX_X1H
|
||||||
|
lda #53
|
||||||
|
sta BOX_X1L
|
||||||
|
lda #24
|
||||||
|
sta BOX_Y1
|
||||||
|
|
||||||
|
lda #0
|
||||||
|
sta BOX_X2H
|
||||||
|
lda #253
|
||||||
|
sta BOX_X2L
|
||||||
|
lda #82
|
||||||
|
sta BOX_Y2
|
||||||
|
|
||||||
jsr draw_box
|
jsr draw_box
|
||||||
|
|
||||||
jsr hgr_put_string
|
jsr hgr_put_string
|
||||||
jsr hgr_put_string
|
jsr hgr_put_string
|
||||||
jsr hgr_put_string
|
jsr hgr_put_string
|
||||||
|
|
|
@ -1,105 +1,116 @@
|
||||||
|
|
||||||
;========================
|
;========================
|
||||||
; draw dialog box
|
; draw dialog box
|
||||||
;========================
|
;========================
|
||||||
|
; from X1H:X1L,Y1 to X2H:X2L, Y2
|
||||||
|
; FIXME: X1H/X2H mostly ignored
|
||||||
draw_box:
|
draw_box:
|
||||||
|
|
||||||
; draw rectangle
|
; draw rectangle
|
||||||
|
|
||||||
lda #$33
|
lda #$33 ; color is white1
|
||||||
sta VGI_RCOLOR
|
sta VGI_RCOLOR
|
||||||
|
|
||||||
lda #53
|
lda BOX_X1L
|
||||||
sta VGI_RX1
|
sta VGI_RX1
|
||||||
lda #24
|
lda BOX_Y1
|
||||||
sta VGI_RY1
|
sta VGI_RY1
|
||||||
lda #200
|
|
||||||
|
sec
|
||||||
|
lda BOX_X2L
|
||||||
|
sbc BOX_X1L
|
||||||
sta VGI_RXRUN
|
sta VGI_RXRUN
|
||||||
lda #58
|
|
||||||
|
sec
|
||||||
|
lda BOX_Y2
|
||||||
|
sbc BOX_Y1
|
||||||
sta VGI_RYRUN
|
sta VGI_RYRUN
|
||||||
|
|
||||||
jsr vgi_simple_rectangle
|
jsr vgi_simple_rectangle
|
||||||
|
|
||||||
; draw lines
|
; draw lines
|
||||||
|
|
||||||
ldx #2 ; purple
|
ldx #2 ; color is purple
|
||||||
lda COLORTBL,X
|
lda COLORTBL,X
|
||||||
sta HGR_COLOR
|
sta HGR_COLOR
|
||||||
|
|
||||||
ldy #0
|
; draw outer rectangle, x+6, y+5 x-6, y-5
|
||||||
ldx #59
|
|
||||||
lda #29
|
|
||||||
jsr HPLOT0 ; plot at (Y,X), (A)
|
|
||||||
|
|
||||||
ldx #0
|
clc
|
||||||
lda #59
|
lda BOX_X1L
|
||||||
ldy #78
|
adc #6
|
||||||
jsr HGLIN ; line to (X,A),(Y)
|
sta BOX_X1L
|
||||||
|
|
||||||
ldy #0
|
sec
|
||||||
ldx #247
|
lda BOX_X2L
|
||||||
lda #29
|
sbc #6
|
||||||
jsr HPLOT0 ; plot at (Y,X), (A)
|
sta BOX_X2L
|
||||||
|
|
||||||
ldx #0
|
clc
|
||||||
lda #247
|
lda BOX_Y1
|
||||||
ldy #78
|
adc #5
|
||||||
jsr HGLIN ; line to (X,A),(Y)
|
sta BOX_Y1
|
||||||
|
|
||||||
|
sec
|
||||||
|
lda BOX_Y2
|
||||||
|
sbc #5
|
||||||
|
sta BOX_Y2
|
||||||
|
|
||||||
|
jsr draw_rectangle
|
||||||
|
|
||||||
ldy #0
|
; draw inner rectangle, x+7, y+6 x-7, y-6
|
||||||
ldx #57
|
|
||||||
lda #29
|
|
||||||
jsr HPLOT0 ; plot at (Y,X), (A)
|
|
||||||
|
|
||||||
ldx #0
|
inc BOX_X1L
|
||||||
lda #249
|
dec BOX_X2L
|
||||||
ldy #29
|
inc BOX_Y1
|
||||||
jsr HGLIN ; line to (X,A),(Y)
|
dec BOX_Y2
|
||||||
|
|
||||||
ldx #0
|
jsr draw_rectangle
|
||||||
lda #249
|
|
||||||
ldy #78
|
|
||||||
jsr HGLIN ; line to (X,A),(Y)
|
|
||||||
|
|
||||||
ldx #0
|
; make vertical line extra thick
|
||||||
lda #57
|
|
||||||
ldy #78
|
|
||||||
jsr HGLIN ; line to (X,A),(Y)
|
|
||||||
|
|
||||||
ldx #0
|
inc BOX_X1L
|
||||||
lda #57
|
dec BOX_X2L
|
||||||
ldy #29
|
|
||||||
jsr HGLIN ; line to (X,A),(Y)
|
|
||||||
|
|
||||||
|
jsr draw_rectangle
|
||||||
|
|
||||||
|
; make vertical line extra thick
|
||||||
|
|
||||||
ldy #0
|
inc BOX_X1L
|
||||||
ldx #58
|
dec BOX_X2L
|
||||||
lda #30
|
|
||||||
jsr HPLOT0 ; plot at (Y,X), (A)
|
|
||||||
|
|
||||||
ldx #0
|
jsr draw_rectangle
|
||||||
lda #248
|
|
||||||
ldy #30
|
|
||||||
jsr HGLIN ; line to (X,A),(Y)
|
|
||||||
|
|
||||||
ldx #0
|
|
||||||
lda #248
|
|
||||||
ldy #77
|
|
||||||
jsr HGLIN ; line to (X,A),(Y)
|
|
||||||
|
|
||||||
ldx #0
|
|
||||||
lda #58
|
|
||||||
ldy #77
|
|
||||||
jsr HGLIN ; line to (X,A),(Y)
|
|
||||||
|
|
||||||
ldx #0
|
|
||||||
lda #58
|
|
||||||
ldy #30
|
|
||||||
jsr HGLIN ; line to (X,A),(Y)
|
|
||||||
|
|
||||||
|
|
||||||
rts
|
rts
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
draw_rectangle:
|
||||||
|
|
||||||
|
ldy #0
|
||||||
|
ldx BOX_X1L
|
||||||
|
lda BOX_Y1
|
||||||
|
jsr HPLOT0 ; plot at (Y,X), (A)
|
||||||
|
|
||||||
|
ldx #0
|
||||||
|
lda BOX_X2L
|
||||||
|
ldy BOX_Y1
|
||||||
|
jsr HGLIN ; line to (X,A),(Y)
|
||||||
|
|
||||||
|
ldx #0
|
||||||
|
lda BOX_X2L
|
||||||
|
ldy BOX_Y2
|
||||||
|
jsr HGLIN ; line to (X,A),(Y)
|
||||||
|
|
||||||
|
ldx #0
|
||||||
|
lda BOX_X1L
|
||||||
|
ldy BOX_Y2
|
||||||
|
jsr HGLIN ; line to (X,A),(Y)
|
||||||
|
|
||||||
|
ldx #0
|
||||||
|
lda BOX_X1L
|
||||||
|
ldy BOX_Y1
|
||||||
|
jsr HGLIN ; line to (X,A),(Y)
|
||||||
|
|
||||||
|
rts
|
||||||
|
|
||||||
|
|
|
@ -17,7 +17,16 @@ CURSOR_Y = $63
|
||||||
|
|
||||||
WHICH_LOAD=$80
|
WHICH_LOAD=$80
|
||||||
|
|
||||||
INPUT_X = $D0
|
; D0-D? used by HGR?
|
||||||
|
|
||||||
|
INPUT_X = $C0
|
||||||
|
BOX_X1L = $C1
|
||||||
|
BOX_X1H = $C2
|
||||||
|
BOX_Y1 = $C3
|
||||||
|
BOX_X2L = $C4
|
||||||
|
BOX_X2H = $C5
|
||||||
|
BOX_Y2 = $C6
|
||||||
|
|
||||||
WHICH_SLOT = $DA
|
WHICH_SLOT = $DA
|
||||||
CURRENT_DISK = $DC
|
CURRENT_DISK = $DC
|
||||||
HGR_COLOR = $E4
|
HGR_COLOR = $E4
|
||||||
|
|
Loading…
Reference in New Issue
Block a user