From b29f0334ae5c595b4fb7e85e6a99687c2824804e Mon Sep 17 00:00:00 2001 From: Vince Weaver Date: Fri, 2 Jun 2023 15:40:42 -0400 Subject: [PATCH] sb: add sbzone files --- games/sb/Makefile | 25 +++++-- games/sb/asplode.s | 92 +++++++++++++++++++++++++ games/sb/asplode_graphics/Makefile | 36 ++++++++++ games/sb/asplode_graphics/sb_title.png | Bin 0 -> 1863 bytes games/sb/asplode_graphics/sb_zone.png | Bin 0 -> 2218 bytes games/sb/asplode_sound/music | 33 +++++++++ 6 files changed, 180 insertions(+), 6 deletions(-) create mode 100644 games/sb/asplode.s create mode 100644 games/sb/asplode_graphics/Makefile create mode 100644 games/sb/asplode_graphics/sb_title.png create mode 100644 games/sb/asplode_graphics/sb_zone.png create mode 100644 games/sb/asplode_sound/music diff --git a/games/sb/Makefile b/games/sb/Makefile index b5b052c4..249fcaa8 100644 --- a/games/sb/Makefile +++ b/games/sb/Makefile @@ -12,7 +12,7 @@ all: sb.dsk #### -sb.dsk: QBOOT QLOAD TITLE DUCK_POND ROOF TARGET CLIFF RAT +sb.dsk: QBOOT QLOAD TITLE DUCK_POND ROOF ASPLODE TARGET CLIFF RAT cp $(EMPTY_DISK) sb.dsk $(DOS33_RAW) sb.dsk 0 0 QBOOT 0 1 $(DOS33_RAW) sb.dsk 0 2 QBOOT 1 1 @@ -21,10 +21,10 @@ sb.dsk: QBOOT QLOAD TITLE DUCK_POND ROOF TARGET CLIFF RAT $(DOS33_RAW) sb.dsk 2 0 TITLE 0 0 $(DOS33_RAW) sb.dsk 5 0 DUCK_POND 0 0 $(DOS33_RAW) sb.dsk 10 0 ROOF 0 0 -# $(DOS33_RAW) sb.dsk 15 0 ASPLODE 0 0 - $(DOS33_RAW) sb.dsk 20 0 TARGET 0 0 - $(DOS33_RAW) sb.dsk 25 0 CLIFF 0 0 - $(DOS33_RAW) sb.dsk 30 0 RAT 0 0 + $(DOS33_RAW) sb.dsk 15 0 ASPLODE 0 0 + $(DOS33_RAW) sb.dsk 20 0 TARGET 0 0 + $(DOS33_RAW) sb.dsk 25 0 CLIFF 0 0 + $(DOS33_RAW) sb.dsk 30 0 RAT 0 0 #### @@ -52,6 +52,19 @@ roof.o: roof.s zx02_optim.s \ ca65 -o roof.o roof.s -l roof.lst +#### + +ASPLODE: asplode.o + ld65 -o ASPLODE asplode.o -C $(LINKER_SCRIPTS)/apple2_6000.inc + +asplode.o: asplode.s zx02_optim.s \ + asplode_graphics/sb_title.hgr.zx02 \ + asplode_graphics/sb_zone.hgr.zx02 \ + zp.inc hardware.inc + ca65 -o asplode.o asplode.s -l asplode.lst + + + #### CLIFF: cliff.o @@ -131,4 +144,4 @@ HELLO: hello.bas #### clean: - rm -f *.lst *.o QBOOT QLOAD TITLE DUCK_POND ROOF TARGET CLIFF RAT *~ + rm -f *.lst *.o QBOOT QLOAD TITLE DUCK_POND ROOF ASPLODE TARGET CLIFF RAT *~ diff --git a/games/sb/asplode.s b/games/sb/asplode.s new file mode 100644 index 00000000..4f220f21 --- /dev/null +++ b/games/sb/asplode.s @@ -0,0 +1,92 @@ +; Yet Another HR project +; +; by deater (Vince Weaver) + + +.include "zp.inc" +.include "hardware.inc" + + +hires_start: + + ;=================== + ; set graphics mode + ;=================== + jsr HOME + + bit HIRES + bit FULLGR + bit SET_GR + bit PAGE1 + + + + ;========================== + ; Load Title + ;=========================== + +load_title: + lda #title_data + sta ZX0_src+1 + + lda #$20 + + jsr full_decomp + + jsr wait_until_keypress + + ;=================== + ; Load graphics + ;=================== +load_loop: + + ;============================= + + + ;========================== + ; Load Image + ;=========================== + +load_image: + + ; size in ldsizeh:ldsizel (f1/f0) + + lda #comp_data + sta ZX0_src+1 + + + lda #$20 + + + jsr full_decomp + + jsr wait_until_keypress + +which_ok: + lda #0 + sta WHICH_LOAD + rts + + + + +wait_until_keypress: + lda KEYPRESS ; 4 + bpl wait_until_keypress ; 3 + bit KEYRESET ; clear the keyboard buffer + rts + + + .include "zx02_optim.s" + +title_data: + .incbin "asplode_graphics/sb_title.hgr.zx02" + +comp_data: + .incbin "asplode_graphics/sb_zone.hgr.zx02" + + diff --git a/games/sb/asplode_graphics/Makefile b/games/sb/asplode_graphics/Makefile new file mode 100644 index 00000000..a3f6a0f4 --- /dev/null +++ b/games/sb/asplode_graphics/Makefile @@ -0,0 +1,36 @@ +include ../../../Makefile.inc + +ZX02 = ~/research/6502_compression/zx02.git/build/zx02 -f +PNG_TO_HGR = ../../../utils/hgr-utils/png2hgr +LINKER_SCRIPTS = ../../../linker_scripts +DOS33 = ../../../utils/dos33fs-utils/dos33 +EMPTY_DISK = ../../../empty_disk/empty.dsk +TOKENIZE = ../../../utils/asoft_basic-utils/tokenize_asoft +PNG2GR = ../../../utils/gr-utils/png2gr +PNG2SPRITES = ../../../utils/gr-utils/png2sprites +HGR_SPRITE = ../../../utils/hgr-utils/hgr_make_sprite + +all: sb_zone.hgr.zx02 sb_title.hgr.zx02 + +#### + +sb_zone.hgr.zx02: sb_zone.hgr + $(ZX02) sb_zone.hgr sb_zone.hgr.zx02 + +sb_zone.hgr: sb_zone.png + $(PNG_TO_HGR) sb_zone.png > sb_zone.hgr + +#### + +sb_title.hgr.zx02: sb_title.hgr + $(ZX02) sb_title.hgr sb_title.hgr.zx02 + +sb_title.hgr: sb_title.png + $(PNG_TO_HGR) sb_title.png > sb_title.hgr + + +#### + +clean: + rm -f *~ *.o *.lst + diff --git a/games/sb/asplode_graphics/sb_title.png b/games/sb/asplode_graphics/sb_title.png new file mode 100644 index 0000000000000000000000000000000000000000..01e2e6b277c03f838c01798694f30b295658144e GIT binary patch literal 1863 zcmV-N2e|l&P)EX>4Tx04R}tkv&MmKpe$iQ?()$1v^M_2vVKwq9Ts93Pq?8YK2xEOfLO`CJjl7 zi=*ILaPVWX>fqw6tAnc`2!4RLx;QDiNQwVT3N2ziIPS;0dyl(!fKV?p&FYE)nr@q^ zL|n{dSH-|9dLUpBqX^5)GUg;HiH_sz9zMR_MR``|bAOJ0HD@uvClbe)VcNtS#50?= z!FiuJ#EP;?d`>)J(glehxvqHp#<}3Kz%xT;IyFxmA{Gm6th6yJni}ymaYWU0$`>*o ztDLtuYvn3y-jlyDnA2C5xlVHg2`pj>5=1DdqJ%PRL}}GYv5=zucn5#j^-JVZ$W;O( z#{w$QAiI9>Klt6Pm7kjQl7exd`^9lS#(=;s(5N}i_p#$NP5}QiaHY5Wl{zr{NqViN zMUH@hZQ$a%r73&BeSad^g zZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{00k3CL_t(|+U=VSlB*yLfHT8|GLtLh z{%6{*0to>uDhksfeYI*)zfH&w&#P#2i_a=~vUrs)(zLDc=i8RfA_C#3=a*{i}`ufmXpp-V7y z1%}A_L*f`3hSCqp`bo@_0&~&KJz$_aOlp$^21tEa`ui~S9Y#SM!w_Xx(M4xe)}bnl z){dp03kaBoO_ znG6RNuR4(q(!g4aGmS9N0VYv*6AVE+%;~`e9p|REU~)~^EPh}nZ-6vA+=8K28133c z7`O*RWP|yEnPL%E%bRy$3b!f3ME%uasC?BK7%IW!UC~B*NP*IV;u;JU^1yW%xC=vt z!nzcJt1uGt--a3dKTZ4Z!0^ElQ6~@Y0@Ewn&=nSQOz*OM9?sPx=(IN3te6ajZI^lP=NO!M z6BnmT-+wf(%NLkVmDPzTV_@Wv-mdb((>ZEM z!@#S;9RIP}?_A5A=rY@z!EddvzX}sLWWxhtJVSUh426LN21dguZyF90+&NloG>qtI zJPiA;JOhk+%>cua35LT2wafwolfcAK$FN|`m`!|X1{jw4kYO+~E)fJC#iC$%8W?67 zWsir^+kr4_V0bhPCq6X{Mk-*CDtN&}JHp zQ?b$->`sC))Jn0UQai&9#mqbb%i(&{AVa|nMoKFzfN4}S14~>og$1)@$&w|%AddF; zzK@?R`n~@*5&Aaxd2I*V0vF0Te@)m&2v>xK+|Y90I^Sl0mJvh*d4Y!s@38qi=zr@V zJ~-T5TI~DsjeWs(y?hJTVM4oGFxU&m-G?Fg0%QA6-jnp6I&x^v>uPCd8N= zhSX7v9tbfKl{>KXoe*ET{gh zjxb>2!!g>g!xWRF`IK;$r@cH)KBgJ6nQf?2DgOO^~w zl6WFXO6T405GuQFNfIt3Ns47Cw2YG4-5RdsC7cPyb%N=UB)cWdR5NffNs49&9)oF3 zlFCf@986=9R4}d^Oo$R^ljMGfxW8n{uv|%aWzJ_XE=5ry&Pv&B$7o9wGbomM=x5X=ag?IVWBgOU)O%#OgEyJjYAgGm$NQ!uU(##Lb) ze1~cGCW^MwaRy?c9opq_CjGHQInGF%B}=JXl)Qrd9v|002ovPDHLkV1jE7 BQ-}Zn literal 0 HcmV?d00001 diff --git a/games/sb/asplode_graphics/sb_zone.png b/games/sb/asplode_graphics/sb_zone.png new file mode 100644 index 0000000000000000000000000000000000000000..b27d87c3ea3b9d942c73a5f39b3313fc2d9ba083 GIT binary patch literal 2218 zcmV;b2vzrqP)EX>4Tx04R}tkv&MmKpe$iQ?()$1v^M_2vVKwq9Ts93Pq?8YK2xEOfLO`CJjl7 zi=*ILaPVWX>fqw6tAnc`2!4RLx;QDiNQwVT3N2ziIPS;0dyl(!fKV?p&FYE)nr@q^ zL|n{dSH-|9dLUpBqX^5)GUg;HiH_sz9zMR_MR``|bAOJ0HD@uvClbe)VcNtS#50?= z!FiuJ#EP;?d`>)J(glehxvqHp#<}3Kz%xT;IyFxmA{Gm6th6yJni}ymaYWU0$`>*o ztDLtuYvn3y-jlyDnA2C5xlVHg2`pj>5=1DdqJ%PRL}}GYv5=zucn5#j^-JVZ$W;O( z#{w$QAiI9>Klt6Pm7kjQl7exd`^9lS#(=;s(5N}i_p#$NP5}QiaHY5Wl{zr{NqViN zMUH@hZQ$a%r73&BeSad^g zZEa<4bO1wgWnpw>WFU8GbZ8()Nlj2!fese{00wqRL_t(|+TEN%mg6c6MK$P!)!^=b zP5rx0;($Ryl7*e~(> znDp5bG=KQ%<$I|4ewtS+OhfB#nt6{LFn8j-FE+q%gg7^{DC(ezs@u8n4+LYJo(pD@D`X} zGI&L!t1JpLN+t|L4UDN@A_^{qAp$cM&E-nUc&z8UrV+{=9!nQ-w$`U% zXI&f8E$0Ge%)v!4#9?Fzr@mY0r5SnKY{=KPxG_Wb_Ok{Vm%oQByBE>!bl2+5vD2n97HJ?bQoJS zEzBot9G=tz6VUHMGz_6kJ9Wsx7#1V~(?pXKCZyj*4rcIdwAMBVvy_aj;1TB2Mn0I3 zWNZZwFubIE0Y;KAoMD=O5g4yzYz2=nd`5!DVcyM>fm!Q!=)~qda~KK15Sa3htS!u0 zz(=Y>Ho?p-jnu#>RbVfSSTId2MPTp^24R@4RJa4C>qez=)hKJ#(vyKQ4kJDoDq!^Y z_Ap|>z-N~2gCPe4Lk$A6B60sVrP3vjOVNhV?+)Xrw9CtU7ftf}2SgZQX4m{P) z1dMoLI`iv<5hc;YgNdO5&sDkrjCiu1cU}7gBM}&?Vct_G+>6ZUi6#ca1SY=T6pn2p z&7iGacvs@C!=P1q1Bca9HCLy_Dl(nX*{eJ*Pymd0yj8aK7 z(a5e?@gKs8;MTY@m~d>XX@)8oF2FQn_Omdu0Y>~VrnUM47-^PqF2jsFox(6|fmtRR zGqU%h)&^OQX>Mn9=ARCE&;V9t?Uupc-Q+vqR_+sIo5J50pRG&7or z6bzeS4#70;ATW%W0;G#*=2Y!%P#6mS*Z7 zDHz!W!!owN5N6_Lw)E4&Ud>>(-Thz{+f$fJ=|mk$+%PTCm4;azezp_Me>$Zu~2TiAFV&@MD-c zEoH>JRhMWG8UdJ_6_6jhT`;Kuo6JzZgh{%G#EoGL7%~>`boR6wh9nFL7;G34Fl4() z)-aNTN%(TZ;wJCs*PM2ZzgKOVJPcVFS;1rq4)Q%P=?RNrBFIRv>(@jLTe)bi);ivN zAknU6FzwmK%!-f&lMJQycyOY^H=P>fl1y`4I@dHcFvltBV``9^TPiTA?E5)wnu1|I zgUdCHeD=Mio5u5+uVD_Dbkm?Y(nK#IZ7(GxTmXa6-sa@!B`(82TE2~DlKnI;vU3GS zF2G0`49z{?fijp(6mS}~$&HpQUT_Zu6T%CgDC^R`4#xRvV8Wh;!I@BlFe&>==yiWT sJq#n?1rxr<fE(EtDd07*qoM6N<$f`%vv>i_@% literal 0 HcmV?d00001 diff --git a/games/sb/asplode_sound/music b/games/sb/asplode_sound/music new file mode 100644 index 00000000..8c1abe50 --- /dev/null +++ b/games/sb/asplode_sound/music @@ -0,0 +1,33 @@ +Videlectrix + +E 4 +D 4 +F 2 +C 2 +rest 8 +>C 8 +>C 4 + +Strongbad Zone + +(Bass) +F 2 +B 8 +C 8 +C 4 + +F 2 +B 8 +C 8 +D 4 + +F 2 +B 8 +C 8 +C 4 + +F 2 +B 8 +C 8 +D 4 +