From 50a3f27a9a94f76ec3e9615f3ba7e8d8b0807956 Mon Sep 17 00:00:00 2001 From: Lucas Scharenbroich Date: Sun, 21 Mar 2021 21:59:54 -0500 Subject: [PATCH] Reorg files; focus on S16 artifact --- assets/smw-bg-1-bw.png | Bin 0 -> 4291 bytes assets/smw-bg-1.png | Bin 0 -> 4246 bytes build-image.bat | 3 +- package.json | 4 +- {src => ref}/GTE.Inline.s | 0 {src => ref}/GTE.Line.s | 0 {test => src}/App.Init.s | 0 {test => src}/App.Main.s | 155 +++++++++++++---------------- src/App.Msg.s | 124 +++++++++++++++++++++++ {test => src}/App.s | 8 +- src/GTE.Main.s | 1 - src/Tool.s | 15 --- {test => src}/blitter/DirectPage.s | 0 {test => src}/blitter/Tables.s | 0 {test => src}/blitter/Template.s | 0 {test => src}/font.s | 1 + 16 files changed, 203 insertions(+), 108 deletions(-) create mode 100644 assets/smw-bg-1-bw.png create mode 100644 assets/smw-bg-1.png rename {src => ref}/GTE.Inline.s (100%) rename {src => ref}/GTE.Line.s (100%) rename {test => src}/App.Init.s (100%) rename {test => src}/App.Main.s (89%) create mode 100644 src/App.Msg.s rename {test => src}/App.s (66%) delete mode 100644 src/GTE.Main.s delete mode 100644 src/Tool.s rename {test => src}/blitter/DirectPage.s (100%) rename {test => src}/blitter/Tables.s (100%) rename {test => src}/blitter/Template.s (100%) rename {test => src}/font.s (99%) diff --git a/assets/smw-bg-1-bw.png b/assets/smw-bg-1-bw.png new file mode 100644 index 0000000000000000000000000000000000000000..e050127b2b99d74083284a0aedee93eab0736376 GIT binary patch literal 4291 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 T&_{@$3Sg(5i*1=TC;tBc(l~OV literal 0 HcmV?d00001 diff --git a/assets/smw-bg-1.png b/assets/smw-bg-1.png new file mode 100644 index 0000000000000000000000000000000000000000..c7c4491dc90dd430fbb333558e03ce5fbe0028e1 GIT binary patch literal 4246 zcmYjVdpuNI`(Jz6!|XxEj7#MqAo!e&o*aIew$yJ~_)x%s#Oa6d~^5l&IfXZvmN zUkh-Y?#JT^#W*3zCP`8%EfR~r$;a)NNa|D=jOP`c0Klx;p986nEs6wyuCdO;&Hs?( z<5jmU*Ibz|28GF6%evHx9#uruJ3NTdcWhOLP@-PjHngUN8|PkoyD@P-A&l+FL7!bT zoA-UcW1YX9*`fBtF@;igujsb8=gIdwK^;4z)fv+J54&&P^di;yRpoz$|Pg0%Tp*IP)Rn8W7z=#3rwi+9X@r^&v%+zF;2 znT?O4V2i%g{p+8(l3YFL3-=PB+NZ8rV<^m$G`c*iu309g7A3(JW6JUHTe&N(_n^&M zh+Vb%vAlJQM^7t$P^rL~DI|a~QtKiWS|P=!mFL}w~bc9=nH0cSY2YVNH@DZkM2bi1ppZd$N^wYhgib2uqNOz3k7vJ^hK#=euLY90bX< z6)r3@Th;rn3E3Tis|HhCDwtp&;%7OPO< zn&|-7lZ#7}z0vVuB1gRr6lfd`oxPH|S8b}O%!72+@#@o!86AHAQD<<2cwky4yX~XP z%ctG^L9I|!Xu&iH6}?-Pna!7}-|UYA8Ro15f0Ji1k&IZSez^y^j_}SBy=>begax0} zYMzMZOK<%!?0aTcSaLH=BiNP`o^%v+@1@CSWyjG)bRK716Jm|633;@0QkwYrJmTrBG){NT^J3iJlqoIHMy9cJ^`rITFacfqM%K}QZ#QM|YBl9M z^|_oz)HP#LGZLPo9-5lGF>18Ml)>Ig)W41=KF!>$#;r+fqP!&5omilQ@fydqa?**X z-Nu#kH7ag$=QFs;>Wb@kD9Ak*OKvg9s@X#f8}?bk4RCyF(f}0=WfK-@Gk3QVPiN+e zvNFf&E#bCWrH0JqxY5~#I#^K>;`%MPhR!RTxa#TlDNM+uj^yT!iV5+dwL@;z8obFAy1m1_qo9N;jG!^);D{^a7 zcTwdfBFi69ha{cdpqKar zLHo(7$fZCdsI^(xyp(ZNKmJ-R>RI$A_c(MLKwP)RWL z8%W2*p=j7zU{=E3wz}R$5NoF^O`wZ>^tk8qSVkq>rd8|)wPaw9H1gBd8*<0;1O#C< zz{;o9qd5hj=P+1!@cBDI;)klakze%H9Xm~C2OPKBNd8r6U(luF6|B8vkaj$2b+iG? zTsnfX(Z1gwi!W7uYWkt^ay!*@UU-?Mu4=dR57)X$N1hVbsp26Z^z=&Ju^vq+D@}h| zv5St+Dhd!Oix;}wVGU8J0e(;l9?rwD@f2u!##ZwAa};E0 zt?c=154DoO%chb=f9N7!glFms_N0%&JThB@7@KT>ZCIOQV~zKrPKIh3192!n;YAd| z@Pmly`&RrGjr}|DHU;LSJ+K0pusc*OG^G!sxkG@Cc=lRkl%k&V8juOer4# z4G%JjN}wMgFkq3FH3+JoQk?)cz!Tq1XYo~?0OV^FrK)9soqRrn?(wo|Be75iywKS7 zQ788jnxGzb(k!KyG(*6E$|nq`x09 zq)=Z4CZRbvSQ-Y54KaH1!O3X$h*2&^KqC3pH0ZUBos1UJwo`18{iV&Qa8j)xvM8!V zo`^l&{Lify@iTR!Tj6GkkRf%Vd?|c-p~{;o>qx2#6-~BV5`U{@S9?1fRKyXWYWf$9 z+l9PJ#1LQzab*UB-h@6HU_kH-;-|dJz*}KYBBqaUf67B3w_|bJAnF`I7zU-?MzdXr z3x$@Gi~h6+_hw?xA&P<7LezK#63SDd>0L<9VDPs@OaqDb1%FNlbR!7zEm6xE?kWJ9 zL|~W|aWCHqxq}*Ky-KZWeQ1?vFtp>D8+fv=0ZQKmVuIeCKEMvyx2I8!sE!auPz7<& z9)v1=e)3p9=G0knf`Sti@^%RWkJ^wAx;}>g_n8YA^B<`=@fV0IAcB5I_+zOmg3|@c zYCA<{&Al%H8J+$Pzbe0*&hvBlzR=IB(DZYnR^pLh)<(GlkeR^;^QmFE4hkyO;P&^!|PoT=1yenvvQ+29TEx zs2ri0zF08Od187+4wV?Br={i&<&1Z^2v?I((N5}vzm(m_m z$Is+(MbRAcNSYl|8TQ#PQdh3;Si}2!+E6yNah`w^Yk;H{ruF>lwOxC%Lq~qM=C<4C zl{JZ&UE^G3BHcd??}>MQZRRI^CrBxLorne7jdZx-P!aF=e$|S&=o9HZ!Cx#qUYIPg zyH&TO+{~Lz=Vs97#FF`m^bf8UzlbmnwUyqWc(u@y@oj>Pq)QE;KOU#;JBJ4pSFekW+!W zya+wO5SD_+!>T10fGqO?%XNf}=u)IPPZ07_b+`;sHb)(6v;mgf-N=K$<1Z@Je2C93 z?bd?j7dfn}U>k=a6*VZ!i@Hz3M;tgi2Gq?FRN^x9>6%C`S5FXswhbBm;3w!B29@B+XxG%z7V5Z0{Gs5H4JtLH-p7J?TOdg?2DGp>J%HF2;F`$pF z-{CbCu4Jc4&B>_*@82U zBI|yK(J4-yrvAn?|Gg0%Ro+7%HTJ|E2uB+6MT_<(waRs3PLXmrVbG;gw|CpLZQ#kR zTbZNA=A@4WseetGqP$Rehbf)PJHuakagXyqvr0BK&4bpN$i6s}GX7mN<*c?UrgZlq zYJP2aS3AckPW82CH=3fiwk@?Rbq@dTp)uXu_xY`&ZaVU|3sDYOgle>Q^>jE!*-d6V z7!Lb8eCM9r!oMn>)b62w{ZW79Mg1JT`RJk-?;P?TUZpyljlXwt97~NV+0gXQ5oMe? zIyCjK>%aeMt*jVpZ))yN#pE7jI@z={;IQ^11FG``QoI+Q?C`7{Th!Rx?K=_F=Wv{C zpjDpS%!DUvdY0@To=|SOa@1L^nAk*|`cfK_x?&_DuRRN!-EcUOGP>nots*q;$XGes z%+vGPs!g-cz0iC->;9k4YIh4CeWX0qJJNLd_NUa?LX5s}EZg;iZG}2iou&LvZOVD(LNBh)KImc71(FQOQ1- zTrPA*7A9-j>v6b`Y#Q;~+B^S*H`!pY2Vw#F*plI1E_J%5)S*2etcD*N&f| zj^8hagNq&p)JkN2MA?zGs6B(jU23he|8-v?3$Ny9QG?7=$>{9`M+535vSYID+ILdM zpjtr07p+p;mV<`-IcE3N4b#npa}A>e@9vjXP?wj6Ek?Yb>jY(-b@XeH#Do!V4=x(R z8ckJ>T^sSms@y)|XB{~pO%aZgbD4zV&NJd8Uwj@*umQ{QH?r@|AS)b>%ST2!ik zGFtY-PF1KiffA#F6)HA+Rc!vNViW55!6bAoqVjtCH&uxoEM&7vSjZVianF0nN2eLJ Z_2X7;HXGTf>OTQkx7OF=o;&y0{{T8ZLN)*Z literal 0 HcmV?d00001 diff --git a/build-image.bat b/build-image.bat index 3d4cca9..f8b47f3 100644 --- a/build-image.bat +++ b/build-image.bat @@ -13,6 +13,5 @@ REM Cadius does not overwrite files, so clear the root folder first %CADIUS% CREATEFOLDER %IMAGE% %FOLDER% REM Now copy files and folders as needed -%CADIUS% ADDFILE %IMAGE% %FOLDER% test\\GTETestApp -%CADIUS% ADDFILE %IMAGE% %FOLDER% src\\GTETool +%CADIUS% ADDFILE %IMAGE% %FOLDER% src\\GTETestApp %CADIUS% ADDFILE %IMAGE% %FOLDER% emu\\test.pic diff --git a/package.json b/package.json index 22534a4..28ed770 100644 --- a/package.json +++ b/package.json @@ -11,9 +11,7 @@ }, "scripts": { "test": "npm run build && build-image.bat %npm_package_config_cadius% && %npm_package_config_gsport%", - "build": "npm run build:tool && npm run build:test", - "build:test": "%npm_package_config_merlin32% -V %npm_package_config_macros% test\\App.s", - "build:tool": "%npm_package_config_merlin32% -V %npm_package_config_macros% src\\Tool.s", + "build": "%npm_package_config_merlin32% -V %npm_package_config_macros% src\\App.s", "build:watch": "watch \"npm run build\" src" }, "repository": { diff --git a/src/GTE.Inline.s b/ref/GTE.Inline.s similarity index 100% rename from src/GTE.Inline.s rename to ref/GTE.Inline.s diff --git a/src/GTE.Line.s b/ref/GTE.Line.s similarity index 100% rename from src/GTE.Line.s rename to ref/GTE.Line.s diff --git a/test/App.Init.s b/src/App.Init.s similarity index 100% rename from test/App.Init.s rename to src/App.Init.s diff --git a/test/App.Main.s b/src/App.Main.s similarity index 89% rename from test/App.Main.s rename to src/App.Main.s index bb55c86..afd0c19 100644 --- a/test/App.Main.s +++ b/src/App.Main.s @@ -86,7 +86,6 @@ SHR_SCB equ $E19D00 lda #0 ; Set the virtual Y-position jsr SetYPos - brl Exit ; Load a picture and copy it into Bank $E1. Then turn on the screen. @@ -97,16 +96,51 @@ EvtLoop cmp #'q' bne :1 brl Exit + :1 cmp #'l' bne :2 - brl DoLoadPic + jsr DoLoadPic + bra EvtLoop + :2 cmp #'m' bne :3 - brl DoMessage + jsr DumpBanks + bra EvtLoop + :3 cmp #'f' ; render a 'f'rame bne :4 - brl DoFrame -:4 bra EvtLoop + jsr DoFrame + bra EvtLoop + +:4 cmp #'h' ; Show the 'h'eads up display + bne :5 + jsr DoHUP +:5 bra EvtLoop + +SecondsStr str 'SECONDS' +TicksStr str 'TICKS' + +; Print a bunch of messages on screen +DoHUP + lda #SecondsStr + ldx #{160-12*4} + ldy #$7777 + jsr DrawString + lda OneSecondCounter ; Number of elapsed seconds + ldx #{160-4*4} ; Render the word 4 charaters from right edge + jsr DrawWord + + lda #TicksStr + ldx #{8*160+160-12*4} + ldy #$7777 + jsr DrawString + PushLong #0 + _GetTick + pla + plx + ldx #{8*160+160-4*4} + jsr DrawWord + rts ; Set up the code field and render it @@ -232,87 +266,8 @@ stk_save lda #0000 ; load the stack phk ; restore data bank plb - jmp EvtLoop - -HexToChar dfb '0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F' - -; Convert a byte (Acc) into a string and store at (Y) -ByteToString sep #$20 - pha - - and #$F0 - lsr - lsr - lsr - lsr - tax - ldal HexToChar,x - sta: $0000,y - - pla - and #$0F - tax - ldal HexToChar,x - sta: $0001,y - - rep #$20 rts -; Pass in Acc = High, X = low -Addr3ToString phx - jsr ByteToString - iny - iny - lda 1,s - xba - jsr ByteToString - iny - iny - pla - jsr ByteToString - rts - - -:count = 4 -:ptr = 6 -:addr = 10 -DoMessage stz :addr - lda #13 - sta :count - lda #BlitBuff - sta :ptr - lda #^BlitBuff - sta :ptr+2 - -:loop lda [:ptr] - tax - ldy #2 - lda [:ptr],y - - ldy #Hello+1 - jsr Addr3ToString - - lda #Hello - ldx :addr - ldy #$7777 - jsr DrawString - - lda :addr - clc - adc #160*8 - sta :addr - - inc :ptr - inc :ptr - inc :ptr - inc :ptr - - dec :count - lda :count - bne :loop - - jmp EvtLoop - DoLoadPic lda BankLoad ldx #ImageName ; Load+Unpack Boot Picture @@ -328,7 +283,7 @@ DoLoadPic dex dex bpl :copySHR - jmp EvtLoop + rts Exit pea $0007 ; disable 1-second interrupts @@ -349,7 +304,7 @@ Exit bcs Fatal Fatal brk $00 -Hello str '000000' +Hello str '000000' ; str adds leading length byte **************************************** * Fatal Error Handler * @@ -617,6 +572,7 @@ qtRec adrl $0000 da $00 put App.Init.s + put App.Msg.s put font.s put blitter/Template.s put blitter/Tables.s @@ -636,3 +592,30 @@ qtRec adrl $0000 + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/App.Msg.s b/src/App.Msg.s new file mode 100644 index 0000000..047a9ec --- /dev/null +++ b/src/App.Msg.s @@ -0,0 +1,124 @@ +HexToChar dfb '0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F' + +; Convert a byte (Acc) into a string and store at (Y) +ByteToString and #$00FF + sep #$20 + pha + lsr + lsr + lsr + lsr + and #$0F + tax + ldal HexToChar,x + sta: $0000,y + + pla + and #$0F + tax + ldal HexToChar,x + sta: $0001,y + + rep #$20 + rts + +; Convert a word (Acc) into a string and store at (Y) +WordToString pha + bra Addr2ToString + +; Pass in Acc = High, X = low +Addr3ToString phx + jsr ByteToString + iny + iny + lda 1,s +Addr2ToString xba + jsr ByteToString + iny + iny + pla + jsr ByteToString + rts + +; A=Value +; X=Screen offset +WordBuff dfb 4 + ds 4 +DrawWord phx ; Save register value + ldy #WordBuff+1 + jsr WordToString + plx + lda #WordBuff + ldy #$7777 + jsr DrawString + rts + +; Rendout out the bank addresses of all the blitter fields +:count = tmp0 +:ptr = tmp1 +:addr = tmp3 +DumpBanks stz :addr + lda #13 + sta :count + lda #BlitBuff + sta :ptr + lda #^BlitBuff + sta :ptr+2 + +:loop lda [:ptr] + tax + ldy #2 + lda [:ptr],y + + ldy #Hello+1 + jsr Addr3ToString + + lda #Hello + ldx :addr + ldy #$7777 + jsr DrawString + + lda :addr + clc + adc #160*8 + sta :addr + + inc :ptr + inc :ptr + inc :ptr + inc :ptr + + dec :count + lda :count + bne :loop + + rts + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/test/App.s b/src/App.s similarity index 66% rename from test/App.s rename to src/App.s index 9cbe4b6..64be8bb 100644 --- a/test/App.s +++ b/src/App.s @@ -1,5 +1,10 @@ - TYP $B3 ; S16 file +; IIgs Game Engine +; DSK GTETestApp + TYP $B3 ; S16 file + XPL + +; Segment #1 -- Main execution block ASM App.Main.s SNA Main @@ -26,5 +31,6 @@ + diff --git a/src/GTE.Main.s b/src/GTE.Main.s deleted file mode 100644 index b41dd61..0000000 --- a/src/GTE.Main.s +++ /dev/null @@ -1 +0,0 @@ - RTL diff --git a/src/Tool.s b/src/Tool.s deleted file mode 100644 index a859af0..0000000 --- a/src/Tool.s +++ /dev/null @@ -1,15 +0,0 @@ -*-------------------------------------* -* GTE Tool * -*-------------------------------------* - DSK GTETool - TYP $BA - XPL - -*-------------------------------------* -* Segment #1 * -*-------------------------------------* - - ASM GTE.Main.s - ASM GTE.Line.s - SNA Main - diff --git a/test/blitter/DirectPage.s b/src/blitter/DirectPage.s similarity index 100% rename from test/blitter/DirectPage.s rename to src/blitter/DirectPage.s diff --git a/test/blitter/Tables.s b/src/blitter/Tables.s similarity index 100% rename from test/blitter/Tables.s rename to src/blitter/Tables.s diff --git a/test/blitter/Template.s b/src/blitter/Template.s similarity index 100% rename from test/blitter/Template.s rename to src/blitter/Template.s diff --git a/test/font.s b/src/font.s similarity index 99% rename from test/font.s rename to src/font.s index de27ebb..b5e58a0 100644 --- a/test/font.s +++ b/src/font.s @@ -643,3 +643,4 @@ s_Template hex 00000000 +