Re: SCREEN1 = SYSVAR @ JSROM
Posted: Fri Jul 12, 2019 10:16 am
Does the very same POKE, just hidden in a BASIC extension.
Tobias
Tobias
RIP Sir Clive Sinclair 1940 - 2021
https://qlforum.co.uk/
And less flexible. It only allows for square-shaped pixels or the standard 512x256 on a 3:2 screen.tofro wrote:Does the very same POKE, just hidden in a BASIC extension.
Code: Select all
gfx_dta dc.w 0,0 ;x,y offset
dc.b 'f',1 ;fill on
dc.b 'p',7 ;poly
dc.b 40,54,20,60
dc.b 40,66,60,60
dc.b 40,54,-1
dc.b 'f',0,7 ;fill off
dc.b 'p',1 ;poly
dc.b 40,54,20,60
dc.b 40,66,60,60
dc.b 40,54,-1
dc.b 'f',1 ;fill on
dc.b 'p',2 ;poly
dc.b 40,20,36,60
dc.b 40,100,44,60
dc.b 40,20,-1
dc.b 'f',0,2 ;fill off
dc.b 'p',1 ;poly
dc.b 40,20,36,60
dc.b 40,100,44,60
dc.b 40,20,-1
dc.b 'a',40,20,5,'N' ;alpha char
dc.b 'a',35,90,5,'S'
dc.b 'a',20,50,5,'W'
dc.b 'a',52,64,5,'E'
dc.b -1 ;gfx dta end
Code: Select all
...
dc.b 's',72,20,7 ;string
dc.b 'Compass rose',10,10
dc.b 'bearings to North',10
dc.b 'bearings to East',10
dc.b 'bearings to West',10
dc.b 'bearings to South',0
...
For a start, I can think of this simple data abstraction. Keeping array of pointers allows undo, redo, `bring to top', operations to be easily implemented. I leave editing of elements for a moment.the elements may be viewed as piled, one on top of another, some sort of list or an array may be needed in basic code to reference them
Agreed. Keep going!tofro wrote:Really nice work so far, Tomas!
..
Code: Select all
; middle / left / right words - MODE 8 / 4 pixels per word
andi.w #$3333,b8_mw(a4) ;mw pattern
andi.w #$3333,b8_lw(a4) ;lw pattern
andi.w #$3333,b8_rw(a4) ;rw pattern
Code: Select all
; Patterns
p11 move.w #$cccc,d0 ;chequered / or
swap.w d0 ;vert. stripes
move.w #$3333,d0
bra.s b8_hl
p22 clr.w d0 ;solid / or
swap.w d0 ;horiz. stripes
move.w #-1,d0