From 9687e6e1dd071ccceb427cc5d6ac03f2d313e79f Mon Sep 17 00:00:00 2001 From: ISSOtm Date: Fri, 7 Feb 2020 10:06:02 +0100 Subject: [PATCH] Allow forcing the second byte of STOP Fixes #433 --- src/asm/asmy.y | 5 +++++ test/link/all-instructions.asm | 5 +++++ test/link/all-instructions.out.bin | Bin 16384 -> 1380 bytes 3 files changed, 10 insertions(+) diff --git a/src/asm/asmy.y b/src/asm/asmy.y index 71aa2218..ea144b89 100644 --- a/src/asm/asmy.y +++ b/src/asm/asmy.y @@ -2126,6 +2126,11 @@ z80_stop : T_Z80_STOP out_AbsByte(0x10); out_AbsByte(0x00); } + | T_Z80_STOP const_8bit + { + out_AbsByte(0x10); + out_RelByte(&$2); + } ; z80_sub : T_Z80_SUB op_a_n diff --git a/test/link/all-instructions.asm b/test/link/all-instructions.asm index 02c9615a..8a80be71 100644 --- a/test/link/all-instructions.asm +++ b/test/link/all-instructions.asm @@ -235,3 +235,8 @@ jrlabel: nop scf stop +BYTE = 0 +REPT 256 + stop BYTE +BYTE = BYTE + 1 +ENDR diff --git a/test/link/all-instructions.out.bin b/test/link/all-instructions.out.bin index 7f2b62346a0d18ec979d2f603b26a0ebdfeb203b..d92783e4667f02e16180058cee078799c5818d85 100644 GIT binary patch delta 525 zcmV~$1Ar9<007XgE?s)rExTpgwrj1{F5B*3En8bQwrnk9ZOgW8+wX;i1>Fu=6B;2P zoFL&v5GzLrk#{TO4u46JG)eC6ZVYNhOn93O`6GmDJKmE1mQ*$S9M{ zvdAi%A7z(APPyckM_&2lS3p696jnr0#RQ5gp`=nuE2FG(%B!HFN-C?Os%omMp{81D ztD~-Z>T95(MjHD`6F+OJnO`*bt57Yp)Jkh@wAD^~9dy)5XI*sFO?N%?)Jt!D^wm#) z0}KoZ2s6lFzZqhvVTK!Fq)|p2W2|w;n_!|zCY$1Sf0$~T>1LQ|mf7Z*Yo7TQSZI;O zmiW_OmRe@H6;@hhwKdjSXT1$J+GMjWw))#P+wBn8X_wvh*lVBt{&B#+{`0?s4ms?I zqmDW5gp*D=?ToX|Iq!mtF1hTAtFF23hMR7=?T)+dx$l989(nAEr=EH4g_mA=?TxqI QdGCXdKKblRu&=&-2d`q3hX4Qo literal 16384 zcmeIu17i?q9Khja+qP}j*xcOQ+}!fKY}_@_E8GY8KOf3ueYEPZU2Enm4}(d;>M@0xk@7cSVjdCS&!Ms3@%y=TFa6>B!^*s@olQk7~o>eQ-O zwPxK4RA|tlM2!|bu*VWBtg*qCzS!Z01CBW1j0^p6#TR!x@Wcym`r|_ge)tnWAVCZu zm}o)?Bb*2#8AudK#1Kmy@gy*aM3NcI5QZ|0;f!Piqevl@G}6f+i%cdlnlX%J9OIeD z1ZFXrDNJP=)0xQ(7BQPS%w-<)S;zubv6v++Wf{v^$qF{Hnl-Ft9qZZ126nQUEo?=x zjU8;~AiLPj9`>@21MKG{hd9g;j&h6>9OojZIL#T(a*hj}=Q@|T%oX4&*U;SK1~<9I zZ`|fCcX+~m9`F#uBOdcRuXxHcp7RHP@{$+4=QVG5%U}G>JO1G-ANa^8KJzcxeBmcK zd?T0d{2-72=t5iC(Vh-;q%)nW6sc2&DwL%h<*7hLDpQFfSdfqW6rdo5DMTHrQjO}= zpeD7cMHz}xjN+7_B&8`u6Y5fr`ZS;+jcG(1n$nEsw4f!eX+?9$#LqvVwh0Uhjt&hAZ)_qWqml;? z8QR$l8$Kc_CN{3MiBCuzW$)%25}lM{>EP}c8k1_}=;0q0n`Z6g84w*5_0nUK}DU;hCE2W8s1`UFQM=F_U2R`s-Mr&a#)$#1oKYMvLbo|UWB2lJ_Z`{v!X zR#&w;r`02^Zfo`CtX5aFI-}J?t!`;mHLvN9y189*+GbzAbn5<%2N$p3d-Cf2*PpLV zQLS>!w~wc9KKpY1&Wk>6ntc8~(!!!kSqmWpG9UvoAOkWW12P~3G9UvoAOkWW12P~3 zG9UvoAOkWW12P~3G9UvoAOkWW12P~3G9UvoAOkWW12P~3G9UvoAOkWW12P~3G9Uvo SAOkWW12P~3G9Uy0XW$pF