From 47f3bf1f343a971827f76246e5823a225beb4fe0 Mon Sep 17 00:00:00 2001 From: Meruemon Date: Sun, 24 Apr 2022 20:08:40 +0200 Subject: [PATCH] added if Status is affected by instruction, instruction doesn't overwrite c_dc_z --- bin/Model/Microcontroller/PIC.class | Bin 13412 -> 13430 bytes bin/Model/Microcontroller/RAM.class | Bin 21195 -> 21358 bytes src/Model/Microcontroller/PIC.java | 34 ++++++++++++++-------------- src/Model/Microcontroller/RAM.java | 11 +++++++-- 4 files changed, 26 insertions(+), 19 deletions(-) diff --git a/bin/Model/Microcontroller/PIC.class b/bin/Model/Microcontroller/PIC.class index 9c9b3b1dd8a230125a0d731944bdc04282f99913..5114ab11639660f4470e7d8b92cc406bf7c55d4c 100644 GIT binary patch delta 2407 zcmb`JTWpj?6vzKF^UZFTg58$AbZNU=O3S5GSnb7_h?JYiz0h)LrCg-;LM>3*QlmhX z7VD+@;2;8t3X&i%2xd!zL8BPZkeG&|fFeOaz)OsYnh+njc)oAHoh}W$*@w+EyK~O( z{O5n>%+=Z(wTBKSIGm$rRLrP|bSL~X$aM)4P5{5ELqqqty}8{eO*cP!aMCLcwZgN1 zc{j_zXDo=XSqQys1TL{0{K7_}incu&-Hc~YP5)6Ce22kc*6IwcIEDWi$7v*yoEfeIH}O-!@Z~`pK8a1W8k@ zX8ApBVfHK@Weu3Z)?g-EPcY3`#aiM3sx&|qexR~Vd8%vxCn|B?k|!0jZGa%2u;tlK zzf1tTO@SGseLu!%*dP*A(zh*W91NPfK~RNZx&rQQD^ip6W1*5N$Wn9;Tq5 z5baT-{q%pPja&#^VE%nX$cb@|36o~KN*Jm)t)w`a4?%z@A&a|_$CHuIy_m-Rn9Wly z7GHFyR&I`^7lWyY0LzaoOP|kNUdmvqut6Qkm^8p6hUwl+mHFTUswfyvE8}ZX$=9KV zH)0KMMhlM~Q30gd9~u+(Vx=XzVWmifyoDUboF2=WH?{6bl+U1yt?GO*nB<9&s^)bqVq%lBae|In&7HyTq{+p3M) zYWu{E8p|ER!W#s66Cvi#43HMMrRmI;B07#Hbt5!!0A9ZyjhO|d^Z6;l=_8!egmVV# z`Pn#>CXLdhQJOT$syLKHIBp_~IbDfv^>5}5S4^M{YUl9D_a*RW6$~vCK2!=nYD6m5 zh%~f_bhSHFm=%jSIMGeF0yRtQR>-ln?@))c#tsN=YTsHnK@?+>n2ecX3d+P(JSC=K znV3l_W}#8c#&eKU2KOgws~N&nT$&99dXWe$L6V5A7wu>fTv&V z;W^<2GsF%o5IeC{?7}MXE>?^8;_}z){PjA2y`A5SMV2k&&OMts6Wx)$IqTW5P9iWn ztSG+2a(l4PZ1|}6?~IWX#btQJRb+^37$vS_ocIle;&+Q6+Gj!SKA zZ*t_ys0QwuOZm)uS*azt3zP1i7KS>S+uT-bY(=B-3Z6G!MThYkUN_#rTgIDKuIP2F zbS|Z$B-3 zP1e}7J!)|pG*Ay%oD$>l0rS$ZabNEm6}zUY>^pC+SIl>QFe*ntsf$#SKse z<~yNIeH$(qK=0^x+ti1$+osD+D3O~{A=|K0Zb7YVx9Fp9g*r`Nr|Ijow&k|AK9sUl z;xiDUF%_Vd#Ar;i>Tp=h9*8?Agwtj=?+Np&X2UGEj(IqRxk9wb^h1mFim1%L=PM$r z`my|QTB*E*rSdYWD;(ABj4} AdH?_b delta 2405 zcmb`JU2Kz89LAq>&il42g>|sDYgyNQ&<(N;i)@R=Aej>glObc{`%7eObj!v@>0%V2 zk%dKBG;v1}iC-=bS$y*CHPs&d_bsYFE`Jj%EBY&T$1A>;Qg|N3!?3+@(j+7%)BtaL%L4o1SWU zz#Vxa!SZl|1#y<;<2;*!E36ndSP3@L%=yXrXhsYDM=RkQj0ZDE7iq+y<0?+mNWhB= zxI`lj0ep!wG}5sR?XuMq^kw;J(zh6(&k(>W=|?tNq?f?_@)OV0d%$(Y8`$Gm%@(1V z)uWv)!49?zyV!CQY<6Sb@T{%ly!mJ$+vJTX+&8THj0*qk;>mCEuq@bGc9f=rjHCa%0tikv6 zoq!JuET|ynj)BSm8$oU2T+TG+FfokT@-JUGsn3%g{!AiB5W!I*I7S4=iQqFLIPrfI z4Eujz{`bfTP6TyEY;vvahye`Ac%WFiyah54$f(ZZ6X4@66!I*T@rjtpJ($CDuz>qa zDsOTPh?nO6CvyHJLMvvV7HC)V&TwD2wH z;4#E_()vp1GFX{knMEQ-2n9S?Z`!JvGEV5XQA}IyHn;j#YO7f$H2FrMZ}MpFJ~&JB z25{sMvW-GhosuUr^E=DJ{1sI2J($H`!#uth3;90O^S7~*zk?>eA8q_yY~}~i%@4^) zQB~nM=(mv1Tm^nA5Vw__lZw=+$fz6+X3L2M<(X+>uHbz#?A2wwAlz8bhe+T834Bcg z7qNw3GW{$~E}{I4s_;jxoMmByWrN|d6Si9@Vs?kqC0XHK2i0t@&@B%X*8CShNl`er zQFyUN?aW6M+3W&@jk0b^C_YP6 zqgvFURy>MEF$b%}T&xw3k@f;~i8?$b>ak5UVy9S=VxZD`lnFh`gdSzW)^rmJm@~O0 zgx8upjBuR7A|P*08FY+Tpl$Ma=z(<5(a^ev`C=~?i`TJQ?864}CR)W?V_@18Oq+sf zvtT?}YQ|BRaWvx*Vs@u1akx0j{JkV>^jX!|J}Vu-K}mU-Gub%o#4xhOH3Y{$SVMBY0vl3bLl&4$w`S@l{nSL%=(2p@MAQ++e&(Tr&4z~|ah67Q)6HBs zMzIJPb~2Lw^R{I<%2gl18_$4<{CP%Y8o12}m|S{)C_Yc$jz#(otkmOJukXYr zy~hMkJ^>;MJfgrO%Fz{;qh2&HAE9Z;r>n_NBOTLFZI)m&aorH3sDjGarfK66|9h#E6TPu=s#h#K8$AlD%$ny*s9+clYy8bjw#}p bvbs}Qz0R^afEAY2Mo81%2J}P%I1By*S)9Kf diff --git a/bin/Model/Microcontroller/RAM.class b/bin/Model/Microcontroller/RAM.class index 25c65bd3f1bb6218a471ae0e479b49ac389e6e3e..5e2d09b52c46d298573b55dbc66fc1e899360c13 100644 GIT binary patch literal 21358 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 127) { System.out.println("Wrong input, value from 0 to 127 expected!"); } else { @@ -119,7 +119,14 @@ public class RAM { set_Programcounter(value + (get_PCLATH() << 8)); }break; case 3: { - set_STATUS(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: { set_FSR(value);