From 62d910288d79b5597178f280da5cbfee22257e95 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9my=20GIBERT?= Date: Sat, 28 Apr 2018 14:10:58 +0200 Subject: [PATCH] Kernel 0.9.1 : KERNEL, Preemtive mode, Code cleaning....step by step....#3 --- .Floppies/A2OSX.BOOT.po | Bin 143360 -> 143360 bytes .Floppies/A2OSX.BUILD.po | Bin 819200 -> 819200 bytes .Floppies/A2OSX.SRC.po | Bin 819200 -> 819200 bytes SYS/KERNEL.S.CORE.txt | 63 ----------------------------------- SYS/KERNEL.S.GP.txt | 70 +++++++++++++++++++++++++++++++++++---- SYS/KERNEL.S.INIT.txt | 10 +++--- SYS/KERNEL.S.IRQ.txt | 11 +++--- SYS/KERNEL.S.MEM.txt | 2 +- 8 files changed, 75 insertions(+), 81 deletions(-) diff --git a/.Floppies/A2OSX.BOOT.po b/.Floppies/A2OSX.BOOT.po index 5bdbebecc9f6a2c4e564aaed0e1e33fad2a2de76..693f27d73a121abbbbcae85a991d7266a59f3651 100644 GIT binary patch delta 5027 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 PVI;vA=Vz}bfA9M*Wrskj delta 2522 zcmYKf3s6&6_TKv*A;`z@kE!Sd`3NIOp}Hv8;;%)GyNueZo!v1)Koqg9V(mJ*#x5A7 zc?=MTCzZOdS<4zEG{M#fyM1rjsm?@pWa405&~9xdiOf!AVy&NLcFmp_YWK~%@0@$i zx#ygFe$QkoFqsOR4Poq=^fb-Irm)K@tA;GS_5bGzhO@Nm`EGvg@{yJaE4g}A-4^>5?JxccJw_zfHd7IyTaD7PKa z&WnS$Pefp|wbYjiu2%T|psJJu>qjcB;r?Afe#@T&3gHE0(IH0?;Hal)2wamiHyP-w&09bMdy(Vd_e)uS#n3>dYGA$2#^Pop$vTCs9dAgE>ai0#}&yfOJ&PTa?SMN zNe_0n6w8(pzO4W+#TC4}0MCo5kc;5r%AKW@YgsAb|h-Eq@tu(|CF zG$B7;fiv=^wJ$?m{L7_LnY2ueEGBzFVlh%Rj-qAxEKT7c!$1w({>FCaa6iw z#3k|)@N|~pxd+(-vN77hUgjOt*~_?xJwG~iKRMMJeRZQJ!sZEi$iI_D5|co2nm|Ch zbLS}Z+)qmQt~9b(F@7zLq$u$FG_q8I=?lnm2=E=HGesS^eN)?ndFE9f5;^1P@>6MWKneIgfpupeoRm)f#u7yh%ONZM3I3$`=*g; zAhhJBpboK)Wsw(>!9VKgW3JBj%uzz0@I3UcERqHJ8_yzn8pT3H(TpW?5m}8p`M(#D z9EJR(i2OI#>{F6wV}x+&_*ffi8iv_&`Iar%tT+4097o3>_%(*!-;FtrjnNJ=6g!WA<&z)f>dEqY+6D77^4B-q9DC}jO|N%xKa>?`%ChOQHSnZMo;mpHjxZ0@->@CDFFK>@&v%gn@J&P`D!zn z58%;eaumRUEo55J>UG zLMH7ukgF}N%%5=B-U-obKGDuxYG<)Vcgoi}(J|5OOYkT7r+m}Ce1E>b)j#T=@bjrQ z_AtNL#;U|KHg+>EsF3&WnJDe8mIqBk*)*^fz+lsmNlR;F=lZ@~vh-d!^jm3PoeVOx zR-UTl={Z)5jr_86tX_vuV|+uLkYrOy(FtvFN)d3(kPt(g`Hw*CSe2JEdQYF69hj9J z(C*f>GE+t`SLubjXd7c2G&W?)oTL}L{hIuFjw&x$QVFa}h+Uqp*R(c&quY$e~A`zx`O?GJ@7c^yRxaD3@!4-QQ zmELv1^B}e^c*};|9!3|4JR1y7dVZWL=HL8;U5hX9!YAyK>{Gsejb^KWU7F=>8qW$l zYS+Lt(F7u)K!Ed1Avjdpz=G}@Ea^VaYGOl-{JA4Q)By)7aP|PZ5WmJ34Y2b!l-qr_ zZ4~`Hn@!Jha&k6S)ot9hfBDM#`l`CO>uLR4^ws@URdnY*x^wUTs-4E)(rVZnX$=U{ zo%J+5qYQ!G<^gtI>4487`nYkQWy}Y0L^AvzBix>+x~T!5=Lfe3>nIEZ%6;v#-1fa$ zCLrb44>FN%&!eev-_+OqUU`48@xzdD4zk*Lq8EO{ zW%RNiCJ5w{3mXER92w%+A=r2SnT?4G5k+r^C_YFbPqCRDW?_ZFQo#y`rG^y&YnI3k JNB-yY{{aB;N45X} diff --git a/.Floppies/A2OSX.SRC.po b/.Floppies/A2OSX.SRC.po index 6d6a5372aaaccbae64198b9304f0b67b9a7eded2..3dbd19c7cf154a5b6dc2155b6f19fc5b85904449 100644 GIT binary patch delta 5008 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 delta 5265 zcmZu#4_I5*bw5wyp$AWZBoG#V3!aNIXW5D?*^aslzL?qb(ob`*4WTRLJA_*I3 zZSk{Z>^h#8*sX6AC*A619fA`*V&pr42`JH$8aQETE-Ou*$Mdw?ZbkFzm+cjrOjc3anJMs57XLYLa z=T+qg%5)!Z0{UZycR9ynEp26IPt@IE5aH!YxVWyj1mW!uC<5N9s|r_l?}yBT)3b7$ z+jpAgqz_W^+DBB1*C6V+BJHgF93!w<}sJGFYO!~ z1;ZZ~5T`9|_xi!`r2^vWO8ea-V7QP&T-MFDbijtlmkUUrGi?iuz=H56V7a`$6O3Ph z!BNRG?6wDEv6IQvyexHrF$`VvPn*#@0etpkee+Q z3nHFkWFL6r`sIGI_N!8N}T8_G-JDwVun?A|xT~(%Fy9b7)xHXTJ7cgr)hnXr0 zn8)uqO?|uNa*-8Gx|_If1up2BooWr71&!~EBqJ%(x<^ydTgh1-r`zpbpHuS9#X+cI zON~a(GLYE6BNz|IB8k(JiJ)u&p*kmL4T{egh zL2YZv>w7dC%nfX)Ys3{8Z|0t3J=Up*p>!SFu?^NY5%V)bE7wfi&j{@#!m6!7T9)P*saV(3|T zpu@Ra@`LW%ba7B_!=3FL4}ozBGC7Tu1rmA%h|8!>w5 z8P|FSead3(pR<6JdV4|m3mQxF(E0+IDB)WcUc}AiFM-sJN(2>Uh083uDz4zU;ZRO7 z(0-4_CcTgNmw0+8Bukq?`&W>O#zVMsFYqs;u+mpR+DyWcc@V#!Gg%k#e@%7#0ZNF3 zfWL}^^{;}|OG4_{fyHw^&DyqWxeW1IEpsFHro@ zDtsJq{zWLtK+{Vk7%5&?jJAT7E97{j*gS>?nvER-0gV%lD zD)N2$fX<%7}G6xz)Jre6ZNqE%OGeuWDTJp(c}$6dSUqi&e{pM~iQi7~;*)(O=~84@&-2Fp-*@b!ML^)-D^eRM4O_(Q7@U z)F($I6$z!H*{{-_Pop3tJBIAV;tQrHRTkN7mc4VSelR?xvK+D7<$gIiw=}A`&aFY` zSV3z})5O~i!kf$77VR&%Y(P`ATs5X?=Q`Ry14EKK@z4$l%gaex|LHbbYOsVH^*epL zogVKlzZ052OXP7)Q|AIcbmd|8bor&$I8@0L3d+i2f51PFPSSmZyfLonS~!Znf>|qf z4yGvJ(05i(C+qs%x777}*ixhIc6EIqC&$j}x`Pc{ol0G=b+Ms1c(bnWV9?V2 zn)edM>U&hVYPiA^mp^`8^PZ-u`bR3o;CTrIZmwpbpat4-_~@A z)xRwO%fEVCQ>iiZMAb?yqGfW2)8=scvOm*YQ?2HCM7$f$>3xx5{A|h@}*CUEu44x%6t6X9ERT3>_tJf&|;56rU6>tGAfCbq zqBI2S{vSZb0%fOJw3)lCRxtiyE~`_rmfylZN+awsa^qQ{CU6G-H=bqDrck<3e~yiO z9%t&mz)I7@GIE~)y*bTEsm?A8Vc{HA2g@4CX@I2=yCT?-A$u+f>%G_pP0q$BCE(A~ z1F`L)*HI41xqnQ#0{;{ohte;C)JHJlO}2ySYmixdPRKr2veV=UVmyzg5>TdDktnMK za_Pg8%H_%rOa7Ky{HSEg}iJBnLyVmeBjFMca7 zH209rXw=NP79%)h`As`lSJLg!yCTNhY8Ub~9~bz=RN`)+fsnla^Ci@V~}GvVmoC^l*KU?PE(YaI1j zJ3%htPHqo*o&LF>yss1MN`5c*YM&w%da;3ffJl1L#s$f&Uaa9J$w|F9bblyM5N^Hp=l+sDlt?h8G^p9lM`&6>|*>(>G55 zL!8+UiB7)po?!@WybZIg**4?AhP-MBv=31|Xrp8SeWI{eDM`R5@l<2#Hu?y2IaLmT zWr4PxjR)zc0pHBD@@ar3oz-r5h(7W>lt0W8hvFbm_WO*=NxhU6e;NHOhcu-2sPtK5Q8m_hD zG;M&`2cB&<{EFk>H4uO*%%(Za-j#OQ9F73AK1%AZ@-3Ff@>6|Vy3)hmL0E&Cl`Zb; z#g96kUBiI@-n98FdGIRV|m)CcsZ7^#PPni0l>V3{~1gpc20r^gON@;GP@|R0bh}g_N zDJIA}TJ_qR8_ee_eofz*a=bI4SQt9~14vbwy1o84XlYDIxjD%>AI0|cw|I2(e*zgV zQ?I+@zjE~bgWJ*f|7LEnf=?lR{~t!*H~ue>ZsR>QfP9Aq*2Pzcj=$wX8f;ECdpFTQL1IZjaX8-^I diff --git a/SYS/KERNEL.S.CORE.txt b/SYS/KERNEL.S.CORE.txt index fc45e5f6..07b656e1 100644 --- a/SYS/KERNEL.S.CORE.txt +++ b/SYS/KERNEL.S.CORE.txt @@ -518,69 +518,6 @@ CORE.PSResume sei inc IRQ.InKernel rti *-------------------------------------- -CORE.PSSleep php - - sei - - phy - ldy #S.PS.A - sta (pPs),y - - txa - iny #S.PS.X - sta (pPs),y - - pla - iny #S.PS.Y - sta (pPs),y - - pla - iny #S.PS.P - sta (pPs),y - - pla get PC LO - plx get PC HI - - inc Advance one byte because of return by RTI - bne .1 - inx - -.1 iny #S.PS.PC - sta (pPs),y - - txa - iny #S.PS.PC+1 - sta (pPs),y - - tsx - - inx skip P - inx skip PC HI,LO - inx - - txa - - beq .8 - - tay Save !Byte count for later - -.2 pla - >PUSHA - inx - bne .2 - - tya - -.8 >PUSHA push CPU Stack BC to restore on top of Soft Stack - - lda (pPs) - ora #S.PS.F.SLEEP - sta (pPs) - - lda #0 cld,clc,cli - pha - rti exit to kernel with CC -*-------------------------------------- DevMgr.Stat .DA DevMgr.FreeMem DevMgr.Free .DA DevMgr.FreeMem .DA DevMgr.HiMem diff --git a/SYS/KERNEL.S.GP.txt b/SYS/KERNEL.S.GP.txt index 381cf2f9..0311da2f 100644 --- a/SYS/KERNEL.S.GP.txt +++ b/SYS/KERNEL.S.GP.txt @@ -42,7 +42,68 @@ GP.CodeStart jmp GP.SysCall *-------------------------------------- * SLEEP *-------------------------------------- - jmp CORE.PSSleep + php + + sei + + phy + ldy #S.PS.A + sta (pPs),y + + txa + iny #S.PS.X + sta (pPs),y + + pla + iny #S.PS.Y + sta (pPs),y + + pla + iny #S.PS.P + sta (pPs),y + + pla get PC LO + plx get PC HI + + inc Advance one byte because of return by RTI + bne .1 + inx + +.1 iny #S.PS.PC + sta (pPs),y + + txa + iny #S.PS.PC+1 + sta (pPs),y + + tsx + + inx skip P + inx skip PC HI,LO + inx + + txa + + beq .8 + + tay Save !Byte count for later + +.2 pla + >PUSHA + inx + bne .2 + + tya + +.8 >PUSHA push CPU Stack BC to restore on top of Soft Stack + + lda (pPs) + ora #S.PS.F.SLEEP + sta (pPs) + + lda #0 cld,clc,cli + pha + rti exit to kernel with CC *-------------------------------------- * *** MUST BE REINTRANT *** *-------------------------------------- @@ -262,14 +323,11 @@ GP.IrqH.Exit stz IRQ.SkipA2osX reset flag rts *-------------------------------------- IRQ.SkipA2osX .BS 1 -*-------------------------------------- IRQ.Tick .BS 1 IRQ.InKernel .BS 1 IRQ.IntNum .BS 1 IRQ.VBL.n0 .BS 1 IRQ.VBL.0n .BS 1 -IRQ.VBL.MSM jmp $0000 -IRQ.VBL.MRM jmp $0000 *-------------------------------------- *GO.Reset jsr GO.A2osX * jmp CORE.Run @@ -284,8 +342,8 @@ GP.CodeEnd .BS $BEE0-* *-------------------------------------- * $BEF0->$BEFF : Kernel Config Block *-------------------------------------- - .DA #6 60hz - .BS 7 + .DA #6 A2osX.HZ=60hz + .HS 00000000000000 .DA #0 ChRoot/Preemptive Disabled .HS 00000000000000 All Slots marked as "Free" *-------------------------------------- diff --git a/SYS/KERNEL.S.INIT.txt b/SYS/KERNEL.S.INIT.txt index 0fbb4efd..5b8583a2 100644 --- a/SYS/KERNEL.S.INIT.txt +++ b/SYS/KERNEL.S.INIT.txt @@ -573,7 +573,7 @@ IrqMgrInit >LDYAI MSG.IRQ php sei >LDYA $FFFE - >STYA IRQ.OldFFFE + >STYA K.IrqHAuxLC.JMP+1 >LDYAI K.IrqHAuxLC >STYA $FFFE @@ -719,8 +719,8 @@ IrqMgrInit.Mouse .4 lda ZPPtr1+1 sta .11+2 - sta IRQ.VBL.MSM+2 - sta IRQ.VBL.MRM+2 + sta K.IrqH.VBL.MSM+2 + sta K.IrqH.VBL.MRM+2 and #$0f sta IRQ.VBL.0n @@ -748,11 +748,11 @@ IrqMgrInit.Mouse ldy #SERVEMOUSE lda (ZPPtr1),y - sta IRQ.VBL.MSM+1 + sta K.IrqH.VBL.MSM+1 ldy #READMOUSE lda (ZPPtr1),y - sta IRQ.VBL.MRM+1 + sta K.IrqH.VBL.MRM+1 jsr IrqMgrInit.HZ2Tick diff --git a/SYS/KERNEL.S.IRQ.txt b/SYS/KERNEL.S.IRQ.txt index 4cb13a41..84219ca6 100644 --- a/SYS/KERNEL.S.IRQ.txt +++ b/SYS/KERNEL.S.IRQ.txt @@ -104,7 +104,7 @@ K.IrqHAuxLC.6 lda #$ff Self Modified bcc K.IrqHAuxLC.8 dec IRQ.SkipA2osX Make regular ProDOS IRQ manager skip A2osX - jmp (IRQ.OldFFFE) Not handled, pass to ProDOS +K.IrqHAuxLC.JMP jmp $FFFF SELF MODIFIED Not handled, pass to ProDOS K.IrqHAuxLC.8 rti *-------------------------------------- * Called by : @@ -122,7 +122,8 @@ K.IrqH.TCLOCK ldy IRQ.VBL.n0 bra K.IrqH.Switch *-------------------------------------- -K.IrqH.VBL jsr IRQ.VBL.MSM SERVEMOUSE +K.IrqH.VBL +K.IrqH.VBL.MSM jsr $FFFF SELF MODIFIED,SERVEMOUSE bcs K.IrqH.DEV Not From Mouse ldx IRQ.VBL.0n @@ -130,9 +131,9 @@ K.IrqH.VBL jsr IRQ.VBL.MSM SERVEMOUSE and #MOUSESTSx.INTVBL IRQ was caused by VBL ? beq K.IrqH.DEV - ldx IRQ.VBL.MRM+2 $Cn + ldx K.IrqH.VBL.MRM+2 $Cn ldy IRQ.VBL.n0 - jsr IRQ.VBL.MRM READMOUSE +K.IrqH.VBL.MRM jsr $FFFF SELF MODIFIED,READMOUSE *-------------------------------------- K.IrqH.Switch inc IRQ.Tick @@ -205,8 +206,6 @@ K.IrqH.DEV >LDYAI Dev.Table *-------------------------------------- .88 jmp ($fe) *-------------------------------------- -IRQ.OldFFFE .BS 2 -*-------------------------------------- MAN SAVE /A2OSX.SRC/SYS/KERNEL.S.IRQ LOAD /A2OSX.SRC/SYS/KERNEL.S diff --git a/SYS/KERNEL.S.MEM.txt b/SYS/KERNEL.S.MEM.txt index 08f0f8a3..b0fb8f03 100644 --- a/SYS/KERNEL.S.MEM.txt +++ b/SYS/KERNEL.S.MEM.txt @@ -365,7 +365,7 @@ K.FreeMem.A phy bit $C000,x bra * *-------------------------------------- -K.FreeMem.A.ERR .AZ "***MemMgr:Attempt to Free an already freed hMem at $%H" +K.FreeMem.A.ERR .AZ "FreeMem:%H:hMem already freed." */-------------------------------------- * # GetMemPtr.A * ## In: