|
|
|
|
@ -4,24 +4,6 @@
|
|
|
|
|
%< { LTH } %> { GTH } %= { EQU } %! { NEQ } |
|
|
|
|
%-- { SUB2 } %** { MUL2 } %// { DIV2 } |
|
|
|
|
|
|
|
|
|
%AUTO-NONE { #00 .Screen/auto DEO } |
|
|
|
|
%AUTO-X { #01 .Screen/auto DEO } |
|
|
|
|
%AUTO-Y { #02 .Screen/auto DEO } |
|
|
|
|
%AUTO-ADDR { #04 .Screen/auto DEO } |
|
|
|
|
%AUTO-Y-ADDR { #06 .Screen/auto DEO } |
|
|
|
|
|
|
|
|
|
%SIZE-TO-RECT { |
|
|
|
|
STH2 STH2 OVR2 STH2r ADD2 OVR2 STH2r ADD2 |
|
|
|
|
} ( x y w h -- x1 y1 x2 y2 ) |
|
|
|
|
|
|
|
|
|
%SET-RECT { |
|
|
|
|
DUP2 ROT2 SWP2 #0006 ADD2 STA2 |
|
|
|
|
DUP2 ROT2 SWP2 #0004 ADD2 STA2 |
|
|
|
|
DUP2 ROT2 SWP2 #0002 ADD2 STA2 |
|
|
|
|
DUP2 ROT2 SWP2 STA2 |
|
|
|
|
POP2 |
|
|
|
|
} ( x1 y1 x2 y2 addr -- ) |
|
|
|
|
|
|
|
|
|
( devices ) |
|
|
|
|
|
|
|
|
|
|00 @System [ &vector $2 &pad $6 &r $2 &g $2 &b $2 ] |
|
|
|
|
@ -98,18 +80,15 @@
|
|
|
|
|
#00 .settings/brush STZ |
|
|
|
|
#0000 ;set-focus JSR2 |
|
|
|
|
|
|
|
|
|
.Screen/width DEI2 #01 SFT2 .frame/width LDZ2 #01 SFT2 -- |
|
|
|
|
.Screen/height DEI2 #01 SFT2 .frame/height LDZ2 #01 SFT2 -- |
|
|
|
|
.frame/width LDZ2 .frame/height LDZ2 SIZE-TO-RECT ;frame SET-RECT |
|
|
|
|
|
|
|
|
|
.frame/x1 LDZ2 #0001 -- .frame/y1 LDZ2 #0030 ADD2 #10 #00 SWP #30 SFT2 #0080 SIZE-TO-RECT ;tileview SET-RECT |
|
|
|
|
.frame/x1 LDZ2 #0082 ADD2 .frame/y1 LDZ2 #0030 ADD2 #007f #007f SIZE-TO-RECT ;nametable SET-RECT |
|
|
|
|
.frame/x1 LDZ2 #0001 -- .frame/y1 LDZ2 #001f #0028 SIZE-TO-RECT ;zoomview SET-RECT |
|
|
|
|
.frame/x1 LDZ2 #002f ADD2 .frame/y1 LDZ2 #0020 #0020 SIZE-TO-RECT ;preview SET-RECT |
|
|
|
|
.frame/x1 LDZ2 #005f ADD2 .frame/y1 LDZ2 #0020 #0020 SIZE-TO-RECT ;colorview SET-RECT |
|
|
|
|
.frame/x1 LDZ2 #008f ADD2 .frame/y1 LDZ2 #0020 #0028 SIZE-TO-RECT ;blendview SET-RECT |
|
|
|
|
.frame/x1 LDZ2 #00bf ADD2 .frame/y1 LDZ2 #0048 #0020 SIZE-TO-RECT ;dataview SET-RECT |
|
|
|
|
.tileview/x1 LDZ2 .tileview/y2 LDZ2 #0008 ADD2 #0100 #0008 SIZE-TO-RECT ;toolview SET-RECT |
|
|
|
|
.Screen/width DEI2 #01 SFT2 .frame/width LDZ2 #01 SFT2 -- .Screen/height DEI2 #01 SFT2 .frame/height LDZ2 #01 SFT2 -- .frame/width LDZ2 .frame/height LDZ2 ;frame ;set-size JSR2 |
|
|
|
|
.frame/x1 LDZ2 #0001 -- .frame/y1 LDZ2 #0030 ADD2 #10 #00 SWP #30 SFT2 #0080 ;tileview ;set-size JSR2 |
|
|
|
|
.frame/x1 LDZ2 #0082 ADD2 .frame/y1 LDZ2 #0030 ADD2 #007f #007f ;nametable ;set-size JSR2 |
|
|
|
|
.frame/x1 LDZ2 #0001 -- .frame/y1 LDZ2 #001f #0028 ;zoomview ;set-size JSR2 |
|
|
|
|
.frame/x1 LDZ2 #002f ADD2 .frame/y1 LDZ2 #0020 #0020 ;preview ;set-size JSR2 |
|
|
|
|
.frame/x1 LDZ2 #005f ADD2 .frame/y1 LDZ2 #0020 #0020 ;colorview ;set-size JSR2 |
|
|
|
|
.frame/x1 LDZ2 #008f ADD2 .frame/y1 LDZ2 #0020 #0028 ;blendview ;set-size JSR2 |
|
|
|
|
.frame/x1 LDZ2 #00bf ADD2 .frame/y1 LDZ2 #0048 #0020 ;dataview ;set-size JSR2 |
|
|
|
|
.tileview/x1 LDZ2 .tileview/y2 LDZ2 #0008 ADD2 #0100 #0008 ;toolview ;set-size JSR2 |
|
|
|
|
|
|
|
|
|
.frame/x1 LDZ2 #0002 -- .workspace-frame/x1 STZ2 |
|
|
|
|
.tileview/y1 LDZ2 #0001 -- .workspace-frame/y1 STZ2 |
|
|
|
|
@ -520,8 +499,8 @@ JMP2r
|
|
|
|
|
|
|
|
|
|
@set-selection-zoom ( x y -- ) |
|
|
|
|
|
|
|
|
|
#7f AND .selection/zy STZ |
|
|
|
|
#7f AND .selection/zx STZ |
|
|
|
|
#7f AND .selection/zy STZ |
|
|
|
|
#7f AND .selection/zx STZ |
|
|
|
|
|
|
|
|
|
JMP2r |
|
|
|
|
|
|
|
|
|
@ -583,12 +562,12 @@ JMP2r
|
|
|
|
|
@mod-selection-zoom ( x y -- ) |
|
|
|
|
|
|
|
|
|
( set zoom ) |
|
|
|
|
.selection/zy LDZ + SWP |
|
|
|
|
.selection/zx LDZ + SWP |
|
|
|
|
.selection/zy LDZ + SWP |
|
|
|
|
.selection/zx LDZ + SWP |
|
|
|
|
;set-selection-zoom JSR2 |
|
|
|
|
( set from ) |
|
|
|
|
.selection/zx LDZ #03 SFT |
|
|
|
|
.selection/zy LDZ #03 SFT |
|
|
|
|
.selection/zx LDZ #03 SFT |
|
|
|
|
.selection/zy LDZ #03 SFT |
|
|
|
|
;set-selection-from JSR2 |
|
|
|
|
;draw-tileview-zoom JSR2 |
|
|
|
|
|
|
|
|
|
@ -765,7 +744,7 @@ JMP2r
|
|
|
|
|
|
|
|
|
|
.settings/zoom LDZ ;draw-tileview-zoom JCN2 |
|
|
|
|
|
|
|
|
|
AUTO-X |
|
|
|
|
#01 .Screen/auto DEO |
|
|
|
|
#1000 |
|
|
|
|
&ver |
|
|
|
|
DUP #00 SWP #30 SFT2 .tileview/y1 LDZ2 ADD2 .Screen/y DEO2 |
|
|
|
|
@ -779,7 +758,7 @@ JMP2r
|
|
|
|
|
POP2 |
|
|
|
|
INC GTHk ,&ver JCN |
|
|
|
|
POP2 |
|
|
|
|
AUTO-NONE |
|
|
|
|
#00 .Screen/auto DEO |
|
|
|
|
|
|
|
|
|
.workspace-frame #03 ;line-rect JSR2 |
|
|
|
|
|
|
|
|
|
@ -795,8 +774,8 @@ JMP2r
|
|
|
|
|
#10 #00 |
|
|
|
|
&hor |
|
|
|
|
DUP #30 SFT #00 SWP .tileview/x1 LDZ2 ADD2 .Screen/x DEO2 |
|
|
|
|
OVR2 NIP OVR SWP |
|
|
|
|
( y ) .selection/zy LDZ + #00 SWP |
|
|
|
|
OVR2 NIP OVR SWP |
|
|
|
|
( y ) .selection/zy LDZ + #00 SWP |
|
|
|
|
( x ) ROT .selection/zx LDZ + #00 SWP SWP2 |
|
|
|
|
;get-pixel JSR2 .Screen/sprite DEO |
|
|
|
|
INC GTHk ,&hor JCN |
|
|
|
|
@ -816,7 +795,7 @@ JMP2r
|
|
|
|
|
|
|
|
|
|
@draw-nametable ( -- ) |
|
|
|
|
|
|
|
|
|
AUTO-X |
|
|
|
|
#01 .Screen/auto DEO |
|
|
|
|
#1000 |
|
|
|
|
&ver |
|
|
|
|
DUP #00 SWP #30 SFT2 .nametable/y LDZ2 ADD2 .Screen/y DEO2 |
|
|
|
|
@ -830,7 +809,7 @@ JMP2r
|
|
|
|
|
POP2 |
|
|
|
|
INC GTHk ,&ver JCN |
|
|
|
|
POP2 |
|
|
|
|
AUTO-NONE |
|
|
|
|
#00 .Screen/auto DEO |
|
|
|
|
|
|
|
|
|
JMP2r |
|
|
|
|
|
|
|
|
|
@ -872,7 +851,7 @@ JMP2r
|
|
|
|
|
@put-pixel ( x* y* color -- ) |
|
|
|
|
|
|
|
|
|
STH |
|
|
|
|
OVR2 SWP2 ,get-pixel-addr JSR |
|
|
|
|
OVR2 SWP2 ,get-pixel-addr JSR |
|
|
|
|
( ch1 ) OVR2 OVR2 STHkr #00 ,toggle-pixel JSR |
|
|
|
|
( ch2 ) #0008 ADD2 STHr #01 ,toggle-pixel JSR |
|
|
|
|
|
|
|
|
|
@ -1014,8 +993,8 @@ JMP2r
|
|
|
|
|
POPr |
|
|
|
|
|
|
|
|
|
JMP2r |
|
|
|
|
&get-color |
|
|
|
|
.settings/color LDZ STHk #01 SFT + DEI #01 STHr #01 AND - #20 SFT SFT #0f AND |
|
|
|
|
&get-color |
|
|
|
|
.settings/color LDZ STHk #01 SFT + DEI #01 STHr #01 AND - #20 SFT SFT #0f AND |
|
|
|
|
JMP2r |
|
|
|
|
|
|
|
|
|
@draw-blendview ( -- ) |
|
|
|
|
@ -1162,11 +1141,11 @@ JMP2r
|
|
|
|
|
|
|
|
|
|
@draw-short ( short* color -- ) |
|
|
|
|
|
|
|
|
|
STH SWP STHkr ,draw-byte JSR STHr |
|
|
|
|
STH SWP STHkr ,draw-byte JSR STHr |
|
|
|
|
|
|
|
|
|
@draw-byte ( byte color -- ) |
|
|
|
|
|
|
|
|
|
STH DUP #04 SFT STHkr ,draw-hex JSR #0f AND STHr |
|
|
|
|
STH DUP #04 SFT STHkr ,draw-hex JSR #0f AND STHr |
|
|
|
|
|
|
|
|
|
@draw-hex ( char color -- ) |
|
|
|
|
|
|
|
|
|
@ -1319,6 +1298,20 @@ JMP2r
|
|
|
|
|
|
|
|
|
|
( generics ) |
|
|
|
|
|
|
|
|
|
@set-size ( x1 y1 w* h* rect* -- ) |
|
|
|
|
|
|
|
|
|
STH2 |
|
|
|
|
( size to rect ) |
|
|
|
|
STH2 STH2 OVR2 STH2r ADD2 OVR2 STH2r ADD2 |
|
|
|
|
STH2r |
|
|
|
|
DUP2 ROT2 SWP2 #0006 ADD2 STA2 |
|
|
|
|
DUP2 ROT2 SWP2 #0004 ADD2 STA2 |
|
|
|
|
DUP2 ROT2 SWP2 #0002 ADD2 STA2 |
|
|
|
|
DUP2 ROT2 SWP2 STA2 |
|
|
|
|
POP2 |
|
|
|
|
|
|
|
|
|
JMP2r |
|
|
|
|
|
|
|
|
|
@within-rect ( x* y* rect -- flag ) |
|
|
|
|
|
|
|
|
|
STH |
|
|
|
|
@ -1443,9 +1436,6 @@ JMP2r
|
|
|
|
|
|
|
|
|
|
JMP2r |
|
|
|
|
|
|
|
|
|
@rol ( byte -- byte ) DUP #07 SFT SWP #10 SFT + JMP2r |
|
|
|
|
@ror ( byte -- byte ) DUP #70 SFT SWP #01 SFT + JMP2r |
|
|
|
|
|
|
|
|
|
@print ( short* -- ) |
|
|
|
|
|
|
|
|
|
&short ( short* -- ) SWP ,&byte JSR |
|
|
|
|
@ -1454,34 +1444,26 @@ JMP2r
|
|
|
|
|
|
|
|
|
|
JMP2r |
|
|
|
|
|
|
|
|
|
@rol ( byte -- byte ) DUP #07 SFT SWP #10 SFT + JMP2r |
|
|
|
|
@ror ( byte -- byte ) DUP #70 SFT SWP #01 SFT + JMP2r |
|
|
|
|
|
|
|
|
|
@untitled-txt "untitled.chr $1 |
|
|
|
|
@nametable-ext ".tbl $1 |
|
|
|
|
|
|
|
|
|
@tool-brush e0d0 8844 2212 0c00 |
|
|
|
|
@tool-selector 80c0 e0f0 f8e0 1000 |
|
|
|
|
@tool-zoom 3048 8484 4834 0200 |
|
|
|
|
@pixel-icn 7cfe fefe fefe 7c00 |
|
|
|
|
@bigpixel-icn f0f0 f0f0 0000 0000 |
|
|
|
|
@halftone-icn aa55 aa55 aa55 aa55 |
|
|
|
|
@save-icn 1054 28c6 2854 1000 |
|
|
|
|
@make-icn fe82 8282 848a f400 |
|
|
|
|
@load-icn feaa d6aa d4aa f400 |
|
|
|
|
|
|
|
|
|
@slider-icns |
|
|
|
|
f0f0 f0f0 f0f0 f000 ( full ) |
|
|
|
|
50a0 50a0 50a0 5000 ( empty ) |
|
|
|
|
@circle-icns |
|
|
|
|
3844 8282 8244 3800 ( full ) |
|
|
|
|
387c fefe fe7c 3800 ( line ) |
|
|
|
|
@zoom-icns |
|
|
|
|
3048 8484 4834 0200 ( in ) |
|
|
|
|
3245 8284 4834 0200 ( out ) |
|
|
|
|
@arrow-hor-icns |
|
|
|
|
0010 181c fe1c 1810 |
|
|
|
|
0010 3070 fe70 3010 |
|
|
|
|
@arrow-ver-icns |
|
|
|
|
0010 387c fe10 1010 |
|
|
|
|
0010 1010 fe7c 3810 |
|
|
|
|
@tool-brush e0d0 8844 2212 0c00 |
|
|
|
|
@tool-selector 80c0 e0f0 f8e0 1000 |
|
|
|
|
@tool-zoom 3048 8484 4834 0200 |
|
|
|
|
@pixel-icn 7cfe fefe fefe 7c00 |
|
|
|
|
@bigpixel-icn f0f0 f0f0 0000 0000 |
|
|
|
|
@halftone-icn aa55 aa55 aa55 aa55 |
|
|
|
|
@save-icn 1054 28c6 2854 1000 |
|
|
|
|
@make-icn fe82 8282 848a f400 |
|
|
|
|
@load-icn feaa d6aa d4aa f400 |
|
|
|
|
@slider-icns f0f0 f0f0 f0f0 f000 50a0 50a0 50a0 5000 |
|
|
|
|
@circle-icns 3844 8282 8244 3800 387c fefe fe7c 3800 |
|
|
|
|
@zoom-icns 3048 8484 4834 0200 3245 8284 4834 0200 |
|
|
|
|
@arrow-hor-icns 0010 181c fe1c 1810 0010 3070 fe70 3010 |
|
|
|
|
@arrow-ver-icns 0010 387c fe10 1010 0010 1010 fe7c 3810 |
|
|
|
|
|
|
|
|
|
@font ( specter8-frag font ) |
|
|
|
|
0000 0000 0000 0000 0008 0808 0800 0800 |
|
|
|
|
@ -1533,7 +1515,7 @@ JMP2r
|
|
|
|
|
0008 0808 0808 0800 0030 1008 0810 3000 |
|
|
|
|
0000 0032 4c00 0000 3c42 99a1 a199 423c |
|
|
|
|
|
|
|
|
|
|8000 |
|
|
|
|
@spritesheet $1000 |
|
|
|
|
&nametable $100 |
|
|
|
|
|8000 |
|
|
|
|
@spritesheet $1000 |
|
|
|
|
&nametable $100 |
|
|
|
|
&color |
|
|
|
|
|