From a9c63d56032dd6e03f5970a8505612dc6479dc3c Mon Sep 17 00:00:00 2001 From: WickedJack99 Date: Tue, 3 May 2022 19:56:59 +0200 Subject: [PATCH] Fixed TMR0 and how STATUS is affected on bank1 --- bin/Model/Microcontroller/RAM.class | Bin 21342 -> 21432 bytes src/Model/Microcontroller/RAM.java | 9 ++++++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/bin/Model/Microcontroller/RAM.class b/bin/Model/Microcontroller/RAM.class index c5b64d236df123237256cf5f115fd813b6aa772d..b1254ab45724d208cd32f5261ea101b32c5f7b15 100644 GIT binary patch delta 3903 zcmX}v3s_WT8VB(AJ#!8h5g3R84#RL0Q3ix@xCjVyK;<$ZAmA-^RMapnGcrwWy=6Bm z)Ah^BZf;smo2B3yS(ceuUb1cN*>>}mvD;15O3U(A?f-nu;`5y69RKq>@4V+d7v_Av zg?IV6<5Wb_5mG6Hh<~&{O`&${vKJ^~2RWl%UF7!j7vfrkJ#4>oC&k$vjedSpq(-(R zwK*MKROIK$=DO7BaCVVl4Ouv~i-!BzE7nD(k4`r~^7=W^T#xi~jJZaEzUI2w&nimV ztih;BSIlUPpDvi|@qRjEt|$7b+gwlf(=q$YWd8e9^s(AKtFiS2mW^2aShiz%9m_r} zADMlcg@bd1{qld-w?L<)id2|C8S1leC{t z(+B(w9pD~1#24vfNn^(dFTvkw(YxRmUlsPKfo*43)DFdru}WPoYMhN@KW{Ch|0D z<>@q&XV4tJiSFb!TFf`o{XC0S@f=#ubLDCCVAw>D|Npen<02(~F3%Thd`VVpPjK=!nRg=ZLjF2(FYZ6nmfQ0}_aJ+Rth`tJ$?oO%WPSqq z0ptgfA3}~Zkm%$i_{`9bV$z?87ZYpvQ#pN$!>JuZb{tuir$$S=zLSLByuUY6|9ui{)?!%VJIIRA>Cexq1i z=5~ce>%deoC)FknC+8}PDwaEwgr4HjLr7CXDOBl0;Yt`;mA=>^0y{+Z?yx1r#nIAV zf{%rdgO7*T;S=B!;T-{A$tltvO*Qm%*#58?6rl{DC}kkUDNagMvIJM8irTbl&JpeX zl0-+Ep}S%8VDn)MU<+Z3V2cCRCOrMzTng{g%V8^Ehrteq9RXVfTit6N>29u-wQox| z;v3)_;YYzY!8gN?h8L;jX=uYHu7i)4yuQB?KMC9iKA9qwDHN?t1)m1KuENxj;`?Em zINra2+k`cvl4pyt8Kr!i5E;{=7Ep+C7xq|4Ny;K}DvL$XfLo(hAiW3aN~HH9y$@-! z*fgLtd^J9K6oXtty0TWB9pKZS#CLDNcRz*nX^i(7jQ2T=7gy}SHr^sf`}IJNz71|W zTnAhy+zz;%aIe7?ig}qXeoNYYnI3&V?EA1Ez#f1-2zwazLunhGE?lL{oj(0I+zGgo z7}F_?>2nO@w8;@k}*O@1$&x zei{A>{8jXD4Lw{(55J*@-{ob~F~}y)WalatMK)bDs4T$}M4Ba-LM(gCugW=q8d2sn~g>XXx&L(^=H3Gfr)CsCxuN70ta z@KfPi1OAU|^NPEGXW-gQ67_i=eHQkajeTyxY;MJD=3q8+F`L`vY?c(*#PK{A&y%ys z%=hSb!7qeg1iu*mZulkeOM87+zKd5#uN8Ro`{3_~e*peL_*L+D5?dY#_)1J|IcD+&X3{O% zhZc$tOI)~<%xf`Ws7L=6_6%$f>{-}zu;0Oc58H-kyyeV4MN-d%mwS>m1L+M7fj3%ibnxdAY@^G=sbBA6{np%VYyy&f#qSQKy zQ|l>FZNNke#UjJaO>+8&4MQITI~H~v?0DE4VJE^)l6HK#o2N+o*K$Lj4m$((CfGLE znXt29XT#pibEJE)!qD5{?tq&IcPHF@xVzvM%9^pm+^*iEpT1J))wN4W6JhhJCe(O(AN3jPZCtKi$fJHR`8`RYm+ z@08_FRvP*)_&4C+#3Am+A-;vS_n_@}&~}O#T~)*T$LhF(sfmy_tFjZe!S7Swq3|H6F<_Z8gNaNoe4 zf$M=Q6c(=wKWWTyGUiA5t_++X&5aHL1igm=Pc!Dqt{g2xYQ%@y#KoG0xI^&Wi)Y!PfR zYzgd8*fLm8Z|%ViF0PP%d4r)>!dJmpqxTy0?nUo)=zXN@{c=MMH==K!-U2roZVcR5 zxN&ed!c7RcSaH75%|3aIo>7M03O@~gI{Xayo8V`{-`wkujB@iW(mR?AeJ(uSoV0fM zJK*QR&xc>o>$f(!d6D$j;g`TKgzc=8mxMhOGL(Td8fV^!^HV@>7 dh1OE)SR-Em`kL=(c!m1oy^ZmbLZoos{{Rk2hC2WN delta 3816 zcmX}v33wA_8VB(Aoy^dt*fuRq%16?Z($e%w11+?aOiG)c^q{4jEr+2z0+ zKYNO|9gj+!Lpp^M@jK3k$?CK%dXl1ckUQ4XN!}pulU-5H-W%M{QM@yuA;{}wN_2B# znLDAAh6Z_9XkX$^aCeev3%_|vCzS;`T~4$0Z($C-R~@8Fq5a4poek|9g7j@@-xQ=T zFsI!XhDqsYsMHdqw?g}IK{^!LPYlxj(0)>oI-Q#+^s_@o*qnjsIGTrTA-1L1?#6aM zw#Tq-3Iz>K9F`lJ_}b6}Q-d@)R5n7Dme5hJga&z!t;G^WW%88m^+ii*GcTuS_+Hw= zt7#jrrS1G6JpD2sC`k3Hn&d@5ou4d)^%=i(>29K6URgG(`D1jTR}#c??a4v>p0DV3`zgR3c* zYcO&o6>uGua6S2X3`UQoY92=oJf2#30!`$JG?iQFT5h8ocoNOy$+Uo{(lWl9R&qN% zz#Zyz`KT9qzV^@4MQi1PzBlqrdAhIPm`~w+lgtwj7Az*6mynfjr)a)|?7S4Kxsy_O z8S*Tr99}_#c_kI|DyrnWsfO>PvAjlJ7T585ne4L5h5fRO$1&Rm%$6kI?C0j7s`qwg z8Cy}`rs@-%ZhltPA94<|?nHeT*?6~{?Mjjt@ZMg$S7kkb`b((4jCwU6RQ?^8+js+= zep6m?RqLf8Bsc${>g$qx;vCM=dGzA~Me;Am@+&#`5_JNE-g)#rWMNFsb0>IXHwfl7F;%54qPr=9$Y@0SGo25 zy<7m7D8KD*iXzxz*kQ0Gu)|?ZSU+qBmnnBR%@mbzRdCgCHE^|Xb#V1+&M^bLJWAQ% z08_NUj)5IZ(b_nQ)yBh4gl&cO$h`Doo-C)Q2Y8y?mR`cw;TOr^;T4GLp4eMo>3CH4DT#Q?^ck|R?5J@HnAF?yat~vQN14> zeE=O@hmNjS9sOir1wW>`>Cg0uAneny8(}xWZiamZc1yQ)$p2(|_<7}BZlBl(zaRcZ z_yh1S!M_6kYLDOO_TW1i`XXF(o8o==58#iWV@J`k57C8>(S>8^LW*q6w##K%UOuk6 z_FrUvZTr-o4-o*22pCh7`Ft z-y#3%^>TyahrFg}1|JRHLeZ8n6l)m^J|27mrVf2Qd&$v*26G#}qKPs%$S1Cbp9X&o z+VK~(qaE$&Ks&Be?MNJ4!824V?ilP7vtaSp&N2sfF6=zm`LH*2TZgn2czA&tH8w(x|rq-^NBBDPr#mp{Sx*R?ANg0bX$ky z5)W?PA>UZy6FJ?w+955qp9 zZ0~?a-SrdX_<$*%fPE77U$9TX24OeCZh~#+XVjbp6@IZDZU@}6SmSe8>nB6 zM3p0@&J?Mz{bAE!2f(Jo;wjq5?6!8fwa&xY%3p@}z~{qz;RnGFhA)I4(&Javd$?Hn zkL&%y2XDgrk-HSRM<91OatDyRPtLtDUJpA1b|&nN${I~xo}+9_lV8k- xy$SYaiZ*VcSYrX~LfBhjLw}$Qd9ta17prTfuz4Ua#S>JVoQtCs@{wlO{{T}~daVEe diff --git a/src/Model/Microcontroller/RAM.java b/src/Model/Microcontroller/RAM.java index e570ed9..931c435 100755 --- a/src/Model/Microcontroller/RAM.java +++ b/src/Model/Microcontroller/RAM.java @@ -167,7 +167,14 @@ public class Ram { bank1[2] = value; }break; case 3: { - bank1[3] = value; + if (bStatusAffected) { + int iStatus_Lower = get_STATUS() & 0b111; + int iSTATUS_Upper = value & 0b11111000; + int iNewSTATUS = iSTATUS_Upper | iStatus_Lower; + set_STATUS(iNewSTATUS); + } else { + set_STATUS(value); + } }break; case 4: { bank1[4] = value;