From 86cb7f5f1c5b20172c4ddce428db3a6d12cb4b33 Mon Sep 17 00:00:00 2001 From: Vince Weaver Date: Thu, 21 Jan 2021 01:32:06 -0500 Subject: [PATCH] gr: boxes --- graphics/gr/Makefile | 2 + graphics/gr/README | 3 + graphics/gr/boxes/Makefile | 38 ++++++++ graphics/gr/boxes/a2.data | 30 +++++++ graphics/gr/boxes/boxes.dsk | Bin 0 -> 143360 bytes graphics/gr/boxes/boxes.s | 119 +++++++++++++++++++++++++ graphics/gr/boxes/boxes_orig.s | 122 +++++++++++++++++++++++++ graphics/gr/boxes/empty.dsk | Bin 0 -> 143360 bytes graphics/gr/boxes/hardware.inc | 103 +++++++++++++++++++++ graphics/gr/boxes/hello.bas | 2 + graphics/gr/boxes/make_boxes.c | 46 ++++++++++ graphics/gr/boxes/zp.inc | 158 +++++++++++++++++++++++++++++++++ 12 files changed, 623 insertions(+) create mode 100644 graphics/gr/boxes/Makefile create mode 100644 graphics/gr/boxes/a2.data create mode 100644 graphics/gr/boxes/boxes.dsk create mode 100644 graphics/gr/boxes/boxes.s create mode 100644 graphics/gr/boxes/boxes_orig.s create mode 100644 graphics/gr/boxes/empty.dsk create mode 100644 graphics/gr/boxes/hardware.inc create mode 100644 graphics/gr/boxes/hello.bas create mode 100644 graphics/gr/boxes/make_boxes.c create mode 100644 graphics/gr/boxes/zp.inc diff --git a/graphics/gr/Makefile b/graphics/gr/Makefile index d3c96f03..8cc96bc6 100644 --- a/graphics/gr/Makefile +++ b/graphics/gr/Makefile @@ -1,4 +1,5 @@ all: + cd boxes && make cd mode7 && make cd rasterbars && make cd rotozoom && make @@ -6,6 +7,7 @@ all: cd starfield && make clean: + cd boxes && make clean cd mode7 && make clean cd rasterbars && make clean cd rotozoom && make clean diff --git a/graphics/gr/README b/graphics/gr/README index 6ab1ea8c..6d924454 100644 --- a/graphics/gr/README +++ b/graphics/gr/README @@ -1,5 +1,8 @@ Various experiments in lo-res graphics ++ boxes + makes lores pictures by drawing boxes + + mode7 mode7 tests, used when making mode7 demo diff --git a/graphics/gr/boxes/Makefile b/graphics/gr/boxes/Makefile new file mode 100644 index 00000000..45787279 --- /dev/null +++ b/graphics/gr/boxes/Makefile @@ -0,0 +1,38 @@ +include ../../../Makefile.inc + +DOS33 = ../../../utils/dos33fs-utils/dos33 +TOKENIZE = ../../../utils/asoft_basic-utils/tokenize_asoft +LINKERSCRIPTS = ../../../linker_scripts + +all: boxes.dsk make_boxes + +boxes.dsk: HELLO BOXES + cp empty.dsk boxes.dsk + $(DOS33) -y boxes.dsk SAVE A HELLO + $(DOS33) -y boxes.dsk BSAVE -a 0x300 BOXES + +### + +HELLO: hello.bas + $(TOKENIZE) < hello.bas > HELLO + +### + +BOXES: boxes.o + ld65 -o BOXES boxes.o -C $(LINKERSCRIPTS)/apple2_300.inc + +boxes.o: boxes.s + ca65 -o boxes.o boxes.s -l boxes.lst + +### + +make_boxes: make_boxes.o + $(CC) -o make_boxes make_boxes.o $(LFLAGS) + +make_boxes.o: make_boxes.c + $(CC) $(CFLAGS) -c make_boxes.c + +### + +clean: + rm -f *~ *.o *.lst HELLO BOXES make_boxes diff --git a/graphics/gr/boxes/a2.data b/graphics/gr/boxes/a2.data new file mode 100644 index 00000000..e52641bc --- /dev/null +++ b/graphics/gr/boxes/a2.data @@ -0,0 +1,30 @@ +15 0 39 0 47 ; background +8 10 27 1 43 ; monitor back +13 3 20 40 41 ; base bottom +13 3 22 36 39 ; base middle +13 5 23 32 35 ; base top +13 8 24 28 31 ; base tip +8 7 14 35 38 ; keyboard +8 8 18 36 39 ; keyboard +8 13 18 31 31 ; logo +5 3 20 42 43 ; base +5 6 19 44 45 ; base +8 20 23 44 45 ; base brown +8 28 28 8 22 ; monitor back +13 9 24 2 26 ; monitor +8 10 21 4 24 ; bezel +0 11 20 6 23 ; screen +8 34 34 21 41 ; drive side +8 34 36 19 40 ; drive side +5 28 35 19 20 ; drive top +5 27 33 21 22 ; drive top +13 25 33 23 43 ; drive outline +0 26 32 24 32 ; drive 1 +0 26 32 34 42 ; drive 2 +5 27 32 28 28 ; drive 1 slot +5 27 32 38 38 ; drive 2 slot +3 31 31 31 32 ; drive 1 logo +3 31 31 41 42 ; drive 2 logo +5 29 30 25 30 ; drive 1 door +5 29 30 35 40 ; drive 2 door +12 23 23 2 3 ; monitor power diff --git a/graphics/gr/boxes/boxes.dsk b/graphics/gr/boxes/boxes.dsk new file mode 100644 index 0000000000000000000000000000000000000000..5d41b98ca41f772f00dd99ddcea89155a50825c7 GIT binary patch literal 143360 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 BxiJ6$ literal 0 HcmV?d00001 diff --git a/graphics/gr/boxes/boxes.s b/graphics/gr/boxes/boxes.s new file mode 100644 index 00000000..2ea67582 --- /dev/null +++ b/graphics/gr/boxes/boxes.s @@ -0,0 +1,119 @@ +; make pictures by drawing boxes + +; 223 -- initial +; 220 -- update end +; 219 -- store color already multiplied by 17 +; 215 -- load Y0 directly into X +; 211 -- load X1 directly into H2 +; 208 -- add subroutine to read byte into A, no need to save Y +; 205 -- optimize end loop +; 197 -- only update color if changed + +.include "zp.inc" +.include "hardware.inc" + +X0 = $F0 +Y1 = $F3 + + +;1DEFFNP(X)=PEEK(2054+I*5+X)-32: +;GR:POKE49234,0: +;FORI=0TO29:COLOR=FNP(0):FORY=FNP(3)TOFNP(4) +;:HLINFNP(1),FNP(2)ATY:NEXTY,I:GETA + + + ;================================ + ; Clear screen and setup graphics + ;================================ +boxes: + + jsr SETGR ; set lo-res 40x40 mode + bit FULLGR ; make it 40x48 + +draw_box_loop: + + ; get color + + jsr load_byte + bmi use_old_color + cmp #$7F +end: + beq end ; hit end + + jsr SETCOL + + jsr load_byte ; Y0 + +use_old_color: + and #$3f + tax + + jsr load_byte ; Y1 + sta Y1 + + jsr load_byte ; X0 + sta X0 + + jsr load_byte ; X1 + sta H2 + +inner_loop: + + ;; HLINE Y,H2 at A + ;; X left alone, carry set on exit + ;; H2 left alone + ;; Y and A trashed + + ldy X0 + txa + jsr HLINE + + cpx Y1 + inx + bcc inner_loop + bcs draw_box_loop + + +load_byte: + inc load_byte_smc+1 ; assume we are always < 256 bytes + ; so no need to wrap +load_byte_smc: + lda box_data-1 + + rts + + + ; 4 6 6 6 6 +box_data: + + .byte $0F,$00,$2F,$00,$27 + .byte $08,$01,$2B,$0A,$1B + .byte $0D,$28,$29,$03,$14 + .byte $A4,$27,$03,$16 + .byte $A0,$23,$05,$17 + .byte $9C,$1F,$08,$18 + .byte $08,$23,$26,$07,$0E + .byte $A4,$27,$08,$12 + .byte $9F,$1F,$0D,$12 + .byte $05,$2A,$2B,$03,$14 + .byte $AC,$2D,$06,$13 + .byte $08,$2C,$2D,$14,$17 + .byte $88,$16,$1C,$1C + .byte $0D,$02,$1A,$09,$18 + .byte $08,$04,$18,$0A,$15 + .byte $00,$06,$17,$0B,$14 + .byte $08,$15,$29,$22,$22 + .byte $93,$28,$22,$24 + .byte $05,$13,$14,$1C,$23 + .byte $95,$16,$1B,$21 + .byte $0D,$17,$2B,$19,$21 + .byte $00,$18,$20,$1A,$20 + .byte $A2,$2A,$1A,$20 + .byte $05,$1C,$1C,$1B,$20 + .byte $A6,$26,$1B,$20 + .byte $03,$1F,$20,$1F,$1F + .byte $A9,$2A,$1F,$1F + .byte $05,$19,$1E,$1D,$1E + .byte $A3,$28,$1D,$1E + .byte $0C,$02,$03,$17,$17 + .byte $7F diff --git a/graphics/gr/boxes/boxes_orig.s b/graphics/gr/boxes/boxes_orig.s new file mode 100644 index 00000000..522b11df --- /dev/null +++ b/graphics/gr/boxes/boxes_orig.s @@ -0,0 +1,122 @@ +; make pictures by drawing boxes + +; 223 -- initial +; 220 -- update end +; 219 -- store color already multiplied by 17 +; 215 -- load Y0 directly into X +; 211 -- load X1 directly into H2 + +.include "zp.inc" +.include "hardware.inc" + +X0 = $F0 +Y1 = $F3 + + +;1DEFFNP(X)=PEEK(2054+I*5+X)-32: +;GR:POKE49234,0: +;FORI=0TO29:COLOR=FNP(0):FORY=FNP(3)TOFNP(4) +;:HLINFNP(1),FNP(2)ATY:NEXTY,I:GETA + + + ;================================ + ; Clear screen and setup graphics + ;================================ +boxes: + + jsr SETGR ; set lo-res 40x40 mode + bit FULLGR ; make it 40x48 + +draw_box_loop: + + ; get color + + jsr load_byte + cmp #$AA +end: + beq end ; hit end + + sta COLOR + + jsr load_byte + tax + +; ldx box_data+1,Y ; Y0 + + jsr load_byte +; lda box_data+2,Y + sta Y1 + + + jsr load_byte +; lda box_data+3,Y + sta X0 + + jsr load_byte +; lda box_data+4,Y + sta H2 + +inner_loop: + tya + pha + + ;; HLINE Y,H2 at A + ;; X left alone, carry set on exit + ;; H2 left alone + ;; Y and A trashed + + ldy X0 + txa + jsr HLINE + + pla + tay + + inx + cpx Y1 + beq inner_loop + bcc inner_loop + + jmp draw_box_loop + + +load_byte: + lda box_data + inc load_byte+1 ; assume we are always < 256 bytes + ; so no need to wrap + rts + + + ; 4 6 6 6 6 +box_data: + .byte $FF,$00,$2F,$00,$27 + .byte $88,$01,$2B,$0A,$1B + .byte $DD,$28,$29,$03,$14 + .byte $DD,$24,$27,$03,$16 + .byte $DD,$20,$23,$05,$17 + .byte $DD,$1C,$1F,$08,$18 + .byte $88,$23,$26,$07,$0E + .byte $88,$24,$27,$08,$12 + .byte $88,$1F,$1F,$0D,$12 + .byte $55,$2A,$2B,$03,$14 + .byte $55,$2C,$2D,$06,$13 + .byte $88,$2C,$2D,$14,$17 + .byte $88,$08,$16,$1C,$1C + .byte $DD,$02,$1A,$09,$18 + .byte $88,$04,$18,$0A,$15 + .byte $00,$06,$17,$0B,$14 + .byte $88,$15,$29,$22,$22 + .byte $88,$13,$28,$22,$24 + .byte $55,$13,$14,$1C,$23 + .byte $55,$15,$16,$1B,$21 + .byte $DD,$17,$2B,$19,$21 + .byte $00,$18,$20,$1A,$20 + .byte $00,$22,$2A,$1A,$20 + .byte $55,$1C,$1C,$1B,$20 + .byte $55,$26,$26,$1B,$20 + .byte $33,$1F,$20,$1F,$1F + .byte $33,$29,$2A,$1F,$1F + .byte $55,$19,$1E,$1D,$1E + .byte $55,$23,$28,$1D,$1E + .byte $CC,$02,$03,$17,$17 + .byte $AA diff --git a/graphics/gr/boxes/empty.dsk b/graphics/gr/boxes/empty.dsk new file mode 100644 index 0000000000000000000000000000000000000000..b34eb5199d4f28583c3ea48dbade142d2d16eefb GIT binary patch literal 143360 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�)_rN2Z}tpyZ20mwR_% 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 z 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 + +int main(int argc, char **argv) { + + char buffer[1024]; + char *ptr; + int color,x1,x2,y1,y2; + char output[1024]; + int out_ptr=0; + int old_color=0xff; + + while(1) { + + ptr=fgets(buffer,1024,stdin); + if (ptr==NULL) break; + + sscanf(buffer,"%d %d %d %d %d", + &color,&x1,&x2,&y1,&y2); + +// printf("\t.byte $%02X,$%02X,$%02X,$%02X,$%02X\n", +// color,x1,x2,y1,y2); + + if (color==old_color) { + printf("\t.byte $%02X,$%02X,$%02X,$%02X\n", + y1|0x80,y2,x1,x2); + } + else { + printf("\t.byte $%02X,$%02X,$%02X,$%02X,$%02X\n", + color,y1,y2,x1,x2); + } + + old_color=color; + +// output[out_ptr]=color+32; +// output[out_ptr+1]=x1+32; +// output[out_ptr+2]=x2+32; +// output[out_ptr+3]=y1+32; +// output[out_ptr+4]=y2+32; +// out_ptr+=5; + } +// output[out_ptr]=0; +// printf("%s\n",output); + + printf("\t.byte $FF\n"); + return 0; +} diff --git a/graphics/gr/boxes/zp.inc b/graphics/gr/boxes/zp.inc new file mode 100644 index 00000000..32082246 --- /dev/null +++ b/graphics/gr/boxes/zp.inc @@ -0,0 +1,158 @@ +;; Zero page monitor routines addresses + +;; LZSA addresses +NIBCOUNT = $00 + +WNDLFT = $20 +WNDWDTH = $21 +WNDTOP = $22 +WNDBTM = $23 +CH = $24 +CV = $25 +GBASL = $26 +GBASH = $27 +BASL = $28 +BASH = $29 +H2 = $2C +V2 = $2D +MASK = $2E +COLOR = $30 +INVFLG = $32 + +; More zero-page addresses +; we try not to conflict with anything DOS, MONITOR or BASIC related + +;; Flying Routine Only + +TURNING = $60 +;SCREEN_X = $61 ; not used? +SCREEN_Y = $62 +ANGLE = $63 +HORIZ_SCALE_I = $64 +HORIZ_SCALE_F = $65 + +SCALE_I = $64 +SCALE_F = $65 + +FACTOR_I = $66 +FACTOR_F = $67 +DX_I = $68 +DX_F = $69 +SPACEX_I = $6A +SPACEX_F = $6B +CX_I = $6C +CX_F = $6D +DY_I = $6E +DY_F = $6F +SPACEY_I = $70 +SPACEY_F = $71 +CY_I = $72 +CY_F = $73 +TEMP_I = $74 +TEMP_F = $75 +DISTANCE_I = $76 +DISTANCE_F = $77 +SPACEZ_I = $78 +SPACEZ_F = $79 +DRAW_SPLASH = $7A +SPEED = $7B +SPLASH_COUNT = $7C +OVER_LAND = $7D +NUM1L = $7E +NUM1H = $7F +NUM2L = $80 +NUM2H = $81 +RESULT = $82 ; 83,84,85 +NEGATE = $86 ; UNUSED? +LAST_SPACEX_I = $87 +LAST_SPACEY_I = $88 +LAST_MAP_COLOR = $89 +COLOR_MASK = $8A + +;; World Map Only + +ODD = $7B +DIRECTION = $7C +REFRESH = $7D +ON_BIRD = $7E +MOVED = $7F +STEPS = $80 +TFV_X = $81 +TFV_Y = $82 +NEWX = $83 +NEWY = $84 +MAP_X = $85 +GROUND_COLOR = $86 + + +LEVEL_OVER = $A0 +JOYSTICK_ENABLED= $A1 +FRAMEL = $A2 +FRAMEH = $A3 +WHICH_LOAD = $A4 +MENU_RESULT = $A5 +SOUND_STATUS = $A6 + SOUND_DISABLED = $80 + SOUND_IN_LC = $01 ; $01 sound effects in language card + SOUND_MOCKINGBOARD = $02 ; mockingboard detected +JS_BUTTON_STATE = $A7 + +COLOR1 = $E0 +COLOR2 = $E1 +MATCH = $E2 +XX = $E3 +YY = $E4 +SHIPY = $E4 +YADD = $E5 +LOOP = $E6 +;MEMPTRL = $E7 +;MEMPTRH = $E8 +NAMEL = $E9 +NAMEH = $EA +NAMEX = $EB +CHAR = $EC +DISP_PAGE = $ED +DRAW_PAGE = $EE + +FIRST = $F0 +LASTKEY = $F1 +PADDLE_STATUS = $F2 +XPOS = $F3 +YPOS = $F4 +TEMP = $FA +RUN = $FA +TEMP2 = $FB +TEMPY = $FB +INL = $FC +INH = $FD +OUTL = $FE +OUTH = $FF + + + + + + +; read any file slot 6 version +; based on FASTLD6 and RTS copyright (c) Peter Ferrie 2011-2013,2018 + +; modified to assemble with ca65 -- vmw +; added code to patch it to run from current disk slot -- vmw + + + adrlo = $26 ; constant from boot prom + adrhi = $27 ; constant from boot prom + tmpsec = $3c ; constant from boot prom + reqsec = $3d ; constant from boot prom + sizelo = $44 + sizehi = $45 + secsize = $46 + + ldsizel = $70 + ldsizeh = $71 + namlo = $7b + namhi = $7c + step = $7d ; state for stepper motor + tmptrk = $7e ; temporary copy of current track + phase = $7f ; current phase for /seek +