From 2a84a426b4889d6d43abccf976d5d71f92074fba Mon Sep 17 00:00:00 2001 From: Virgil Dupras Date: Wed, 15 Apr 2020 16:53:04 -0400 Subject: [PATCH] Strip usages of IY register --- emul/forth/z80c.bin | Bin 2152 -> 2157 bytes forth/boot.fs | 2 +- forth/z80c.fs | 10 +++++----- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/emul/forth/z80c.bin b/emul/forth/z80c.bin index 5e30fda921390ba4932b5380702f35249660155e..9de982f52fbca05ce37338619410c6a794bffd39 100644 GIT binary patch delta 1030 zcmYjQO-~bH5T19xT1Z)nMv92df&^MXF~k$rlCrJXMB36Wp+*crz(f;ZgItV>*q=~( z!5bHP)-+AL5>dHm>cK-fi3x^_#vfo(pVWB4Dm#KbK zfB*G}zwbI}BsUYwbdef3{Icu1&s?!oyuFf?&Py9*$)wwNV-q=@RNWvi%_=5^?D@5) zO9SCH@&apiusextqJa%=+tXp0Zx=$&BZp3{W z)M)rrlcGMyV~`*==j_G#g@rb>tO$d;DWKYzU=MFWCK+^{suFw1@$|c{M#Cfqo2c(B zoUt0PX8ItNO9l19U{vOqt7v0W$4SYuw51wEv@NPq4Yc`P6QiYFH2`fZA}VhS*lI=C zblh-BZi_ucx*~_4K&&mbDA~|efWH}OB?&6~plDELC5ChiScIX={543TvQ&g{2p+nK zU`B^eeB#VE)1MpbBpIc;$)|8nRm8kjEWOY!ZOkgqweLblb&hjA zHvMWeO9tuAa&uCfMYOLQZ}-g8Wz7Z_WI78GdR4w6C!C+;JK4n}YS`S01NZP=cj7 zPX}fRf?*VmTxJGc!vtJ?Je{_#IJYMO*#Xvbx(Da*3P70FX$HIxS69~~VaMw(g>#ar zBwwnHrkf(~$T03P>2A_W&C(kGBnE}F5YwNWOvK0d9GOd1ilX*Q%3u#S&rw0|#Z88^ qH!{mO%6lI6u-Gz(tQ4pHPJz`Ew{>PK211LUsgT!9~J=tFX delta 1103 zcmYjP&rcI!5S{Pa?e>RI3KFrX$wCRC6^tQzK#NUTsy0Fk?UL4jAqW`s01Xlo6O!t^ zC-4tw?;e`;FF@+SgGoJb(Gw;Z5~EiylKSS`R=sTYdo%N9-kbRmI1N-U%dxZLk5}mI zHu{&b*X?La&=-CIk^^Rifx7TukR-^=>R!pipZ z^+>pzJivSkyPwD;I!VV{S8r<}lS!oPh?6t_KNcXjzpMu}5IuRixfbpu!(YR@A%;Od zzmT-M6cN!zQTJ+Jv_VRy>_lcRld$PfuZullQG6<$v4=3!2ki(|lO7U&w_d`yQRmmB zX4CDm=uU@i8FAkxAF7Dmg+bQglMirbP^TY2a@< zV+~+FI*=8~1#M&2!izAbCMGnl8AICwU2L_e$bA>*mPJ)IAcOxK;-;%6cnn{Qr!JUT zP^E}jCbTl1PReQ1(NPw46gzteKZBq9u97Uk`rq)viguC2B06AtP-C-3{qUfKhgajT zNs=nE1aFZ%8bmUqkyZ?CTd`cW80#kuR0HJJ)j*ORw$r(EX1Wg^_82v>WH_xYNX*ku z*uv3EYK4A`@WS{iyy(fiPJRJdER~}cWv#h~SCQ=)7E^2nxY(Q`7vPceYO*@L*xm}BJe*49omJPsn0t|^Oo^47wjiZSjul}_6s<$?rK1~%B< zn7ZO!AUtWi0#S!rMV^Exw3|n|Ba19Q7A);^#c=E;>^4)az?$|K)bnFW(^X E2RVo0vj6}9 diff --git a/forth/boot.fs b/forth/boot.fs index 6fd98f0..6ef4ffc 100644 --- a/forth/boot.fs +++ b/forth/boot.fs @@ -320,7 +320,7 @@ PC ORG @ 0x34 + ! ( execute ) PC ORG @ 0x0f + ! ( compiledWord ) ( Execute a list of atoms, which always end with EXIT. - IY points to that list. What do we do: + DE points to that list. What do we do: 1. Push current IP to RS 2. Set new IP to the second atom of the list 3. Execute the first atom of the list. ) diff --git a/forth/z80c.fs b/forth/z80c.fs index 4d5fb1c..e96ffe0 100644 --- a/forth/z80c.fs +++ b/forth/z80c.fs @@ -85,13 +85,13 @@ CODE 2OVER HL POPqq, ( D ) DE POPqq, ( C ) BC POPqq, ( B ) - IY POPqq, ( A ) + EXX, HL POPqq, EXX, ( A ) chkPS, - IY PUSHqq, ( A ) + EXX, HL PUSHqq, EXX, ( A ) BC PUSHqq, ( B ) DE PUSHqq, ( C ) HL PUSHqq, ( D ) - IY PUSHqq, ( A ) + EXX, HL PUSHqq, EXX, ( A ) BC PUSHqq, ( B ) ;CODE @@ -101,11 +101,11 @@ CODE 2SWAP HL POPqq, ( D ) DE POPqq, ( C ) BC POPqq, ( B ) - IY POPqq, ( A ) + EXX, HL POPqq, EXX, ( A ) chkPS, DE PUSHqq, ( C ) HL PUSHqq, ( D ) - IY PUSHqq, ( A ) + EXX, HL PUSHqq, EXX, ( A ) BC PUSHqq, ( B ) ;CODE