EXTENDED CPC DSK File Disk-Info WinAPE 2.0B03 (Track-Info  RSHAKER18BASSHAKER18BIN SHAKER18BINISHAKM1V2BINB !"#$%RVII1 SCR&'()*+,-./012345RVII1 SCR{6789:;<=>?@ABCDERVLLCRT0BAK FGRVLLCRT2BIN HIRVICRT1CBIN JKCRTCTST BINLRV BASMRVLLCRT0BIN NOSHAKER18BIN@cB@cN00|006ffff>fff<ll8lfff>|~L2~0123456789ABCDEF 0<3? ( ĐДԁ ( "*ç@I!@@II!@@I!m@.1͛@Bͧ!"!נ!uZFA!CNA!CNA!qmFA!CNA!&CFA!2CNA!FA!>CNA!CVA!H~A!CvA!VA!FCVA!NC^A!\C^A!VA!nCvA^!CAV!CA^!xCAF!CAf!jA~!)iAN!OA!LB ~A!C^Aô@@"ASA!"!LB~_#Vʴ@#"AAկ͙\>0{202ԇ2[͇![f0!Gf!~Gf!C>fP #= uZkfEfqmv^-_JIHGF%$#"!~~;r{Ôǔ˔ϔӔהpq oo;zEzXzlzVVYYYYYP8PPPhP{PgS7SOST_T?TOHjJJuussssssFsPscs[s~~kfEfv^-_JIHGF%$#"!;r{Ôǔ˔ϔӔה;zEzXzlzP8PPPhP{PgS7SOST_T?TYYYYVVYuurssssssFsPscs[srssssssFsPscs[spq oojJJCPC SHAKER 1.8 / LONGSHOT. LOGON SYSTEM(1) UPDATE VRAM VS CRTC (14 TST) (0) CRTC 2 RVMB(2) SKEW DISP ON R0 RUPTURE (5 TST) (F0) BOUNGA:CRTC 2 ZERO!(3) INTERRUPT DELAY FROM R2 (18 CALC) (F1) INTERLACE VM (27 TST)(4) UPDATE CRTC R0 TIMING (7 TST)(5) R13 UPDATE IN 4 USEC SCREENS (R0=3) (5 TST)(6) R13 UPDATE IN 2 USEC SCREENS (R0=1) (5 TST)(7) R13 UPDATE IN 1SHAKER18BASpZZ" SHAKER 1.8 LONGSHOT / LOGON SYSTEM  ? SHAKER 1.8 LONGSHOT / LOGON SYSTEM  ?( "SHAKER18.BIN" 2 B@Track-Info  R USEC SCREENS (R0=0) (5 TST)(8) GATE ARRAY PIXELISATION(9) GATE ARRAY INKERISATION (3 TST)(E) GATE ARRAY MODERISATION(R) HSYNC DELAY MODE UPD,UPD R2,LGTH R3 (2.1.0)(3 TST)(T) R2 UPD DURING & AFTER HSYNC (6 TST)(Y) R3 UPD DURING HSYNC (8 TST)(U) R4 & R9 CHECKING (6 TST (IN PROGRESS))(I) VSYNC CONDITIONS (16 TST)(O) R1 STORIES (7 TST)(P) R6 STORIES (11 TST)(RETURN) RVNI LTD(CAPS) ANALYZER / FORCED STAB CRTC 0 R0=0 (4 CONF)(CTRL) R5 SCANNER / (TAB) R5 STORIES (INTERACTIVE)(COPY) CRTC 2 OFFSET(D:@O <2R!cQ"/Q! S"PT>2R!Q"/Q!R"P>22R<>2R!Q"/Q!R"P>12R$!>R"/Q>2R!R"P!|R"/Q>2R! S"P>2R>2P!PϝQI͹I IRIA0'SII͹RI(I 'S_͹III I͹1'Sͯ͹âPY!AQ*f![ f!cQpfI>GyR6 STORIES (3 RUPTURES ON SCREEN)T01-R6=0 IN 5 SEC. (PRESS SPAEL) RUN ALL TEST (4 SEC EACH) / Z80A SYNC ON CRTC CNT <> CRTC CAR DISPLAY!! REF C0vs=0 DEFINED FROM CRTC VSYNC FROM PPI.PORTB.0=1 !!! Hϝ*"qH>2I!8I(I!*HvH> -:I=2I( gI)ƝY![!!JIf-!>I(IJ:Ig)!"DIIQYYII͹ 0IQ IY ͹I͘ Iq͍QŸ́qV! 0aQiY (͜Ͷ IIIqI'S͹IqIͯ+ ͹Xxw!:JɝXx|H>Y!:J՞!HJͷ![J [JPw# 0w# !R0T05-50 L. FROM 2ND LINE IN DISP AREA : PATCHWORK R6=0/R6=8 WHEN R1>R0><2R 2Pɾ̀>2qIqIqI=(͞qI!@ai͎>(y ͹I@II͘Y ͹ IQ IY>@2S!-$"S> 2S19>B.>2S!#"S>2S18>C>2S!#"S> 2S09>A2TJ>JAM!Lf>24L2K2>L2M2N>62L2bN!pL60>I2-L!IIIIͶKAMf!pL61>q!IIIIͶKAMf!pL62>q!IqIIͶKAMf!pL63>q!qqIIͶKAMy2Tz2 T!SϝSI#͹I @IYIYIYIY(ͦ͹ͯ<͹̯Y!S f![f!TPfR6 STORIES -AGAIN-T06A-ON C4=9/C9=0 PATCHWORK R6=9/25 IN DISP AREA FOR 64 LINES!@"T! "T!U"T!U"U!%"T>!@"T! "T!U"T!VU"U!"T!@"T!"T!U"T! U"U!"T!TϝTI͹IYIYIYIYI(ͦ@͹ͯH͹!UɝY! U f![f! UPfR6 STORIES -LAST LINE-R6=0/FF FROM C0=2 ON C4=R4, C9=0..7, PREVIOUS R6=R4+1R6=0/FF FROM C0=2 IN V.ADJ ZONE (R5=16) (Cf!pL64>q!qqIqͶKAMf>q2-L!IqIIͶK!LAMf!Lf2K|2 L}2Lz2L{2LƝIIIq͹͹III III͘ÌÌÌI͹͹III II!#x0)))) L%!cLR8=3 ON LINE 0 : FRAME SIZE=#xxxx usec (R9=7)(R7=0)INTERLACE VIDEO MODER8=3 ON RASTER LINE 2 / R8=0 ON LINE 43 / FRAME SIZE=#CALC WITH R6=#xx:R7=#18, BEFORE R6DELAY FOR EVEN+ODD FRAME (E/O R6=50/50,7F/50,50/7F,7F/7F)P!P"BM>02wNhMhM>12wNN͹hM>02^Y͌#= Q͹! 0 aqiQ,iY$$aIͯ͹+V'&%$#"! @@@@@@@((((((((@YI>Wy!qW f![f!`f!@f!|Wf!Wf!W0f&W!P͙!WPf!Wf!͙!0XPf!VXf!͙!XPf!XfR1 STORIES(L1)f>=;MAMf>>;MAMf>?;MAMf>12;MAMf*N+"N* N#" NgCN)ƝIIIq͹I III͜I͊͹!#x0))))pTN%!1NR8=3 ON C9=0, C0=#xx : FRAME SIZE=#xxxx usec (R9=7)R8 UPDATE DELAY + 0 FRAME DELAY>2G>2 >2x2Nx2N>02pLƝIq͹I IIIIIMII2I(R͹I2I!#x0))))pRL%!cL!"!OϝͳO2@O>?2nOI͹II!͹'S@͹0'SI$III!?@͹><2yOTrack-Info  RAT #C000+(5x80)(L2)AT #C000+(6x80))(L3)AT #C000+(7x80))STORY 1 : UPDATE VMA/VMA' CONDITIONS - DISPEN OFF/ON COND.PROCESS : UPDATE R1 ON 16 LINES FROM L1 (R1=40-n, n=1..16)STORY 2 : R1 > R0 WHEN C9=R9 & C9<>R9PROCESS : UPDATE R1 ON 16 LINES (64 x 7, 40 (C9=7))+(40 x 7, 64(C9=7))STORY 3 : R1=0 EFFECT (EACH LINE : 4 x OUT R1,0/OUT R1,40)PROCESS : UPDATE R1=0 FOR 4x8 Lines FROM C0=3C, C0=3D, C0=3E, C0=3F!XW"#W!(YϝVI͹I>Y>GyI(kYͶy >Wyͯ(͹.Y.qYqYqYqY-2 ON C4=2,C9=0,C0inst=5 : PPI.B=#xxEVENT: OUT R7,3 ON C4=3,C9=1,C0inst=34: PPI.B=#xx>a!a4##= ͹I@͹ II͹ IXxsw͹I@͹I\I͹ ÌXxsw͹I:ayM͹Xxsw II> 2ayI2II!cͷI.IY!cf!cf!df!cͧc!cͧc>52ld> 2d!c͏c!adf2d!d`f:]gd):]g*e):]gae):]ge)!df!df!-ePf!def:]ge):]gf)!e@f!ef!7^3f>f#)= !f>7!C@>8!C?>9!C>>A!C="YSY2CZ!YϝYYIC͹IA@͹ͯ͹Y! Z f![f!EZf!]ZfR1TST : C4=R6-1, C9=R9, PREV R1=40, OUT R1>R0 ON C0vs=#25CRTC-VMA'=#C000+(80x24)CRTC-VMA'=#C000+(80x25)!{ZϝM[I͹!>ZQ =( B> [Q =(B>-[O =(ͯ-͹ÁZs6|g  U"["(6#6+|g sJ[+6+6##|g 1͙\>02 \>42G\>72\l> 2[![f2[![f![ffzd)fd)!ad>22ld>͏cf!ld4P ##= ɎJKTVSYNC MANAGEMENT DURING R3R3 APPLIED ON ALL VALUES OF C4R3 APPLIED ON ALL VALUES OF C4, EXCEPTED WHEN C4=R7 (C9=0)(THEN R3=12)R2=50, R3=12, R0=63 :V1=#xx, V2=#xxON PREVIOUS LINEVSYNC CONDITIONS IN HSYNC (R2=#2E/R3=14)>> UPD R7=C4 ON C9=0,C0v=#35 PPI.B ON C9=0,C0v=#3A:#xx>> UPD R7=C4 ON C9=0,C0v=#35 PPI.B ON C9=0,C0v=#3E:#xx>> UPD R7=C4 ON C9=0,C0v=#35 PPI.B ON C9=1,C0v=#3A:#xx>> UPD R7=C4 ON C9=0,C0v=#35f! \4P !\f!G\4P !U\f!\5P CRTC x, TZSV V 1.0LD(HL),A VSYNC+6144usec (+ n x 64), OFFSET PTR HL=00, A=FFLD(aaaa),HL VSYNC+6144usec (+ n x 64), OFFSET PTR=00, H=FF L=&55PUSH DE VSYNC+6144usec (+ n x 64), OFFSET PTR=00, D=FF E=&55!՞Y!\÷TKTUL>28!M"\"\I*\#"\M͹x0*\B>͹͹I͹I>Xyh`"]͍h`"]>yPS]!"G]!n]͹I͹I>yxw>y#*G]#"G] PPI.B ON C9=1,C0v=#3E:#xxPPI.STATUS 5us BEFORE R7=C4 :# PPI.STATUS 5us AFTER UPD R7<>C4 (R7=C4 BEFORE)(VSYNC CANCEL)(C9>0):# PPI.ST C0=46 15 LINES AFTER R7=C4 ON C0vsio=#1E:xx,xx,xx,xx,xx,xx!i"f!h"g>!w2^go==G!h"f!h"g!81V"\"fx2h#"g"ggs#r!fϝͰ\O!S B"fgh)>28gI!i>I_Y͹IS ͹.u#= I>y!i<Po-&@~2hFxo~2(hxo~2)h! hfP #= I>ny͹&h%!IhPf!hf>02I ͹I>y͹xXPh`H!7^wsrutqI!86,6y,6,6#6#6#6!I͹I>I!|^ϝnb!a!canb!Fb!canb!cb\]͋b-:͹͹I͹I>yx2(_x2)_8<>y>yx2*_8)͹>yx2+_8@͹>yx2,_>y!3_ϝY!_f=^,]ͮ^![f! `fP!O`f!_!f!n]_!m`hI͹&h%!hf!hf-!g"9!g"9fR͙\![f!gfDELAY BETWEEN HSYNC (C0=R2) AND INTERRUPTION (IM1)WHEN R3=0E, INTERRUPT OCCURS #xx uSEC AFTER C0=R2 (#FF=NO INT)VSYNC DURATION (6=&180 ON CRT 0,3,4)(0=&400 ALL CRT / n=&400 CRT 1,2)R3 High=6 >> SIZE=&xxxx uSECDELAY OF 'CALL TO #38' ON INTERRUPTION IS xx uSEC (RST#38=4 uSEC)DELAY OF INTERRUPTION CALL (IM2) IS xx uSEC!/iϝ2Gi<2QiiIKLI><2Gi )ˈCQi! "i!B"i02j͋:Qif!f!(_fa)f0a)foa)fa)fa)@!`f!3af!raf!a0f-f)#> >,PLEASE WAIT... PPI.VSYNC ST. EACH 6us FROM UPD R7=C4,IO ON C0vs=#1E (C4=1,C9=0)INI/INC B INST. FROM C0vs=#21UPDATE R7=C4 (C4=1) ON C9=0 FROM C0vs=0,1,2,... PPI.PB IN on C0vs+5CRTC 2 - GHOST VSYNC - OUT R7,C4=1 IN HSYNC (C0inst=R2=46), THEN...PPI.B IN HSYNC (C0inst=51):#xx / AFTER HSYNC (C0 inst=60):#xxEVENT: OUT R7,16/OUT R7,1 ON C4=1,C9=0,C0inst=10,18: PPI.B=#xxEVENT: OUT R7,Track-Info  R?gj)!jf+͹ I II͹͹QIY͹I I0Iͯ|!jO ~w2Ji'͹FiY!jf!j![ff>A.j!;jfP W !;jw###R5 SHAKER : MAGIC COCKTAIL / KEY 1 TO 8 TO MODIFY SCANNER SPEEDUPDATE R5 FROM 0 TO 1 ON C0=#00, C9=0?!kϝ!l"l>2l2k!":k>2k>02kkI͹I>Ly>Ky!0 Ia IiI!l@~<(=y#͓ Y I>0y Iq́l> > n!u> !29x>: !u>29x!w!01!u> !29x>: !u>29x!w!0:> > "t2t2Ut02cx>12w"^w!32"*xz2At{2tx2ty2u"ox>*2w!5tϝ!wIIxIIyIIII ͹II !@͊II͹ IQ IYp!qIQi( ͒aq!IQaIq>?y[QY 0IQ IY II͹I?I͙II II͹Iq IQ IYIIduͯ-͹;t><2eu!  "muSpu|2:lgl)>(g$l)ͯ|O|O!l N#~#foq*:k|0g":k/l%Y!lfk͹&kY!kj!lPf!4lfR5 STORIES (UPD R5 ON C0=#3F)R5 VALUE=01 LINE=28, R12/13=3000Key 1/2/3/4=Video Page, 5/6:Offset Inc On-Off, 7/8:Offs H/L=0 (+shift=speed)><2l .:k?<2k!l6#6} !l"l:l<2lͫ"l͋ɸlkk k0k#kk:k;klllll?lllI͹!om?q͘I9͹Xx2pmƝ!wmϝ!i"m!`M2 }2!! . "uSu"!  "uSu"IaiQQ&a,,,,i%ai$Q>>29v02cx>32w!16"*x!sx"^w!12"ox29x2w!vϝ!wIIxIIyIIII͹IIp!qIQi( IIQͦaq#IQaIq>?ynQY 0IQ IY͹I?I͘II͹Iq IQ IY>2u!@!~w##z@ sx!w6f!wf!xf!Vx"m>n!4n>Ii͹qI?I`M͹Xxw#͹*m#"m*m+"m= !4n!9n)N#!n n!~nfP $- 5Am:pmgn)!nfͯ5͙\![f!]nf!nPfR0=3F / CRTC IO ON R0 (OUT(C),C)UPDATE R0=7F, OUT ON HCC=3A :xxOKOOK: C0=..3F..40..41.. / KO: C0=..3F..00..01..OUTI ON C0vs=#3c:xx (01:IO ON 5TH NOP / 00:IO ON 4TH NOP)!Wo"o!o"o!oϝWoI ͹I!ͭJo͗ ͯ$͹#o>ia=͎>?2p!z"o!~"oͱo~!P!{!&pf![f****xx** ****xx** ****xx**R0=3 / TEST FOR CRT 2 (NOT EXCLUSIVE :-)) / YELLOW = BORDER ONLY / C9=R9 NOT IN HSYNCCYAN COLOR >> C9=0 - 16 RUPT / LINE / 3 UPD R13 COvsio=29,39,49TEST WITH R1=3, R9=7, R4=120!xN#N# !xzW@ UUUUUUUUUU!zɝ!(zͷY!@y|!P!{!>͛![ f!yfR0=7 - RVMB NO BORDER BYTE (CRTC 0)!yɝ!(zͷY!@@y!H @y!P)@yvy!yf![f!Po>@2p!"o!"oͱo!P!{!>po!pɝ!pͷY f![f>7zgp)!of~?͸y͹ Ix!{!>͛R0=3 / TEST DISPTMG SKEW VERSUS BORDER / 3RD VERTICAL ZONE: NO SKEW / YELLOW = BORDER ONLYAw#|g0?&x0?&x?&x0JDKSL]RUMFK_GWYNE>2C{!K} 2C{!}>2M{>y2v{$!~>2C{>2M{>q2v{>!'~2C{2M{>q2v{>2{"+}!zϝ*"zͰ|!|{!zz>=(.:{=2{ ƝY*+}f!~f![f-!|{|}:{g)!m}f!"IIIIIIIIIIm͹ II IIIII@I5!? >qqQAayQ͞q@II>II͹IIq IqIIͯ ͹åp:!qϝxII}II~IIII͹II I@It!qIQA|͔QqAiqiqiqiqiq Qqq>7y! aiqI?ͩI I I[͹I>I II͹IIIq IqII><2r:r 2rͯ͹q>27s2s2s>2z>2w>27s2s2s> 2z> 2w!u> !!w29x>xx[!12: !uF29x7!!sx!u!sx> !u> !29x>xx[!12!w:Track-Info  RqYayq͜iIqͱI>K>E&DyQ(͐>yIIqI>+yI?II yg|82͹Xxw!yɝXxz:٠o>(>:ߠ0"0$:ޠ0#0%:ݠ0$0&:ܠ0%>0>Ú>Ý>ä>ç>î>ñ>øͯ|(=W*|:|w],w2|z2|͝><2|_ > k(2|ͳ>! w,w!yɝ!(zͷY!@y!4@y! @y 0z!P!{!>͛!}f![f!}f!=}f!K}f!G~fCRTC ANALYZERTEST R01 : R0=0 WHEN R4<>0, R9<>0R4 SYNC FOUND:#xx>fo>"!& 6#!Ԅ!ϝI>yIIIII͹I III>q,!'qIai!  IqqY>7aqqQaiqY=(>IyIq>*y>yq> y>yq>?y͹ IqI>?yTQYQ>KyII II͹I͹Iq͹IILQYFQYͯ$͹ï!ͷY!>w,>w,w,> w,w,>w,w,>pw,!B6,C6,.|g0!w|g0!B6,C63,.|g0ȇ!w|>>>x<<<<PRESS KEY 1 TO 8: IDENTIFY THE 1ST FLASHING COLOR UNDER 1ST PATCHWORK LINE AT >>>x<<< X POSTEST R02 : R0=0 WHEN R4<>0, R9=0TEST R03 : R0=0 WHEN R4=0, R9<>0TEST R04 : R0=0 WHEN R4=0, R9=0NOTE : EXCEPT INK 0 + RED/WHITE RASTER, ONLY ONE EXTRA INK EACH 2KB BLOCKUNABLE TO FIX : PRB NOT ISSUED FROM C4/C9 / OTHER PROBLEM TO IDENTIFY!  > 2#!"! ">2:>G >2xx2<2!+"hI>2x2<:>!  > 2#>:!܀@2"S`i >2!"h02 !lϝIIIg0!P!{!n6#!Lf!χf!ɝJLFRUKTMx8PXP4CRTC x / C0=0=Red+Magenta/C0=1=Grey/C0=2=Green/C0=3=Blue/B&W Grid=Offset updatedR3A R0=3 OUT R13 >>>>>>>******** C0=3.0.1.2R3A R0=3 OUT R13 >>>>>>>>>******** C0=0.1.2.3R3B R0=3 OUT R13 >>>>>>>>>>>******** C0=1.2.3.0R3C R0=3 OUT R13 >>>>>>>>>>>>>******** C0=2.3.0.1R3D R0=3 OUT R13 >>>>>>>>>>>>>>>******** C0=3.0.1.2R3E R0=3 OUT R13 >>>>>>>>>>>>>>>>>******** C0=0.1.2.3R6A R0=1 OUT R13 >>>>>>>******** C0=1.0.1.0R6A R0=1 OUT RIIIIII ͹II>yq,!+qIai IaqY!@͸>6ͲqQFNY=(ͨ,I>yq>Ry>y=yQY IqyQI?Y> y>yqYQYQYIKQY͹Iq II0 IQ IY͹ II͹IILQY:  >2>2=(2>2>2>2Y![f!f!If:!ۂ(!f!@Y!13 >>>>>>>>>******** C0=0.1.0.1R6B R0=1 OUT R13 >>>>>>>>>>>******** C0=1.0.1.0R6C R0=1 OUT R13 >>>>>>>>>>>>>******** C0=0.1.0.1R6D R0=1 OUT R13 >>>>>>>>>>>>>>>******** C0=1.0.1.0R6E R0=1 OUT R13 >>>>>>>>>>>>>>>>>******** C0=0.1.0.1R7A R0=0 OUT R13 >>>>>>>******** C0=0.0.0.0R7A R0=0 OUT R13 >>>>>>>>>******** C0=0.0.0.0R7B R0=0 OUT R13 >>>>>>>>>>>******** C0=0.0.0.0R7C R0=0 OUT R13 >>>>>>>>>>>>>******** C0=0.0.0.0R7D R0=0 OUT R13 >>>>>>>>>>>>>>>******** C0=0.0.0.0R7E R0=0 OUT R13 >>>>>>>>>>>>>>>>>**pɝ!iͷ: :(?!>͵!>͵!>͵>2ссссT].w,w,!!~#w$% >2 01 ON LAST H COL). C9==> 0=RED/ 1=BLUE/ 2=GREENC4=0=FULL COLOR C4>0=COLOR C9+BLACK [ CRTC 0: R5 ADJUST AFTER C9=R2=2 > C4=1]CRT1.3.4:[2,0,1,2,0,1,2,0,1,2,0],[1,2,0,1,2,0,1,2,0,1,2],....(C4=0)CRT0:[2,0,0,1,2,0,0,1,2,0,0],[1,2,0,0,1,2,0,0,1,2,0],[0,1,2,0,0,1,2,0,0,1,2]...CRT1.2.3.4:[2,0,1,2,...,2,0,1],[2,0,1,2,...,2,0,1],....(C4=0)JTL_R??&&0:****** C0=0.0.0.0??&&0!ϝI͹,͹ITJY IQTKY IQͯd͹.>y   yɯY!RͷJQY!xf!PN!Y!N0!ƌf!>0N@= !YɎTKTTL>r#@s#q@= LINES MODE 2,0,2,... [BORDER/INK 0] / BLACK RECT. [INK 0/INK 1] RED:L. MODE 0LINES MODE 2,0,2,... [BORDER/INK 1] / BLACK RECT. [INK 1/INK 0] RED:L. MODE 0!"!-"!֍">2>22>-2%!"!;"!JT">i2>2>,22!fϝgII͹T>y!ϝ:>(02ЃЄIIIIIII͹II>yqX!AqI IQai! )>ͱy>6͸qQa-iqY=(ͩ>Iyaq%aqy=yIy&yYqY?YyYIYQYIKQYQY͹Iq0 IQ IY͹͹IILQYͯ|$͹à?iq Lz܈FrЉ6lƊ(\<<<<: >2F22n>2܄F<<<<: >2F2n>2>2!<<<<: >2F22n>2:Ox2!&  ~#Track-Info  RQYq  !JTiI(͓( =y,͞ I!Kai͹Iڍͯ͹JKLM><2ۍ> 2_ !s@!ϝ!N"gII͹T>yxq  !JTI(͐( =y=͞ I͹Iͯ&͹TKQYQY IYl!͙!`f!@f!̎f!f!-f![f:>8>2SPLIT RASTER ON INK 0. 1ST COLOR=MODE 3 / 2ND=M2 / 3RD=M1 / 4TH=M0C0=06 (CALC FROM VSYNC) INST:OUTI (5 usec)OUT(C),R8 (4 usec)OUT(n),A (3 usec)00 02 04 06 08 0A 0C 0E :PREV R9=7 R4=38 >> UPD R4=0 WHEN C4=1 & C9=7 >> C4=2 (Ovf) :PRV R9=7 R4=1>> UPD R9=1 WHEN C4=1,C9=7,LASTLINE FROM C0=#29 R2=#2E(01:C9=0)PREV R9=7 R4=38 >> UPD R9=0 WHEN C4=1 & C9=0 (UPD FROM C0vsio)(00=Upd Ok) >>3C=xx/3D=xx/3E=xx/3F=xx/00=xx/01=xx/02=xx/03=xx/04=xx/05=xxPREV R9=7 R4=1 >> UPD R4=3 WHEN C4=1 & C9=7 (LAST LINE):xx (00:C4ovf 01:C4=0)PREV R9=7 R4=38 >> UPD R4=1 WHEN C4=1 & C9=7 (UPD FROM C0vsio)(01=C4 Ovf)PREV R9=7 R4=1 >> UPD R4=0 WHEN C4=1 & C9=7 (UPD FROM C0vsio)(01:C4=0 00:C4 10 12 14 16 18 1A 1C 1E 20 22 24 26 01 03 05 07 09 0B 0D 0F 11 13 15 17 19 1B 1D 1F 21 23 25 27!ϝAI͹.E'ͯ͹&QͮY (ͣ͠% ɯY!_ͷ!f+x`)a) !fP!P>xw# @= ![f!0fMODE UPDATE (2 TO 0) BEFORE AND DURING HSYNC (R2=#2E/R3=#E/1ST C0=#2B)OUT(C),R8 ON C0=#xx, MARKER xxSPOIL : CRT 0.1.2.4 >> READABLE MARKER 08 / CRT 3 >> R. MARKER 09KDJSLKTUMF^_GRYDW> 9!> !ovf)!ͷY!f![fJKTRESULT OF CRT-R4 & R9 CHECKI͹ II*͹I(QY QY9͹XxwƝ!'"&!d"= *&#"&*=+"=I'͹ II͘Id͹9͹XxwB#Ɲ!"~!d" *~#"~*+"I͹II͘&Id͹[7͹XxwB#Ɲ!"!"!ږ*#"*#"I͹II͹ II͢>yI$III7͹XxwI&IIIB#ƝI͹II͹IIͲI$III7A> !B2x2L|2t}2!ϝ`I͹!I.& .>>(ay IaiiY IQ= <>(ay IaiiY IQ=(>(ay IaiY IQ= ͯ ͹æY!ͷ>U!@>~,˭>@ !͙!`f!Pf![f!@f!Cf!rfɎKDJSL]WUMF^_GRYNETESTS : R2 UPDATE / R3 LENGHT FOR MODISATION / R3=0 SETTING (ON 3RD ZONE)OUT R2,#09 ON C0=7.8.9.A (CRTC C0=SCREEN C0-1)YELLOW COLOR O͹Xx<(=2Ɲ!"ś!d" *ś#"ś*+"I͹II͹IIͲI$IIId͹_7͹Xx<(=wI&IIIB#Ɲ>$AwƝ&AwƝ2az2l{2qI͹͹II@͹$IQY7͹Xx!܄"!"e!"B:_>2߅>2ԅ2F>2az2mz{(222{>252{*#"2Ҝ!ڄ"!"e!"BI!@@IB@I!!@ w̓zISHAKM1V2.BINͯ5x8x0555Kyٷ'@̀ !PP!NLY IN MODE 2>!11!>!12>!13>!14 !15>!16>"O2ߓ!“ϝI͹I>X. Q&aͮYͧ= ͯ͹g!f!%PfR2 UPDATE DURING HSYNCR2=#0B / R3=10 / ON C0=#0D0E0F10, OUT R2,#xx (+ R2=#2E ON C0=#23)I I!ͷY!`f!@f!``f!f!`Pf!͙![fJKT>>>> >>>202!ϝ)I͹I ! >X. QIiͳa I Yͯ= ͯ͹g!?f!VfR3 UPDATE DURING HSYNCR2=#0B / R3=10 / ON C0=#0D0E0F10, OUT R3,#Kyٷ'@̀ (Bs##|g ͧ:ܠ!+|"!՞Bs1m@*"!՞ͣ\1?(.&0! (<(!fOKxKOx)e@|O |O |g}Po|gO6T]!w?~̀#~͛# &o))) ~#zW@W &o))) ~#{P_>W~(y#~Iy#~Iy# sFI YI QI YI QI YI QI YI QI YI QI YI QI YIQ1!Mx0x8x0x8͹x8M͹Mù0x (+ R2=#2E ON C0=#2A)!ϝ!]!͔͵C!!ז™$ͅ! >f~#P #= Sj!f!hͶ!hf!hͶ!ėhf!ږfv)>,#!vhf:gԘ)!hf!4hf!hͶ-!P"jc f)#![fPREV R9=7 >> UPD R9=1 WHEN C9=3>>C9=0 (OK FOR CRT 3+4 ONLY):PREV R9=7 R4=38 >> UPD R4=1 WHEN C4=1 & C9=7 >> C4=0 Track-Info  R!{OB:::z֟YIH IPH{x Ox (   !  x0x8x0x8"|!Mx0x8x0x8͹x8M͹M͹͹x8!M[|R͹*|+"|*| > !נPIXIqI? CIB= Iqllllllll>X<|0f8l8vv0 000 0 0f<ZP #= CRTC x!ZZ[Z!A<[TKTULTCCCCCCCCCCCGPPQQEOMOaRPPQQaRLCCCCCCCCtIIIIIIIJCPC SHAKER 1.8 - ADDITIONAL MODULE / LONGSHOT. LOGON SYSTEM(1) INTERLACE C4/C9 COUNTERS(2) INTERLACE CRTC 2 C9 STRANGER THING(3) FAKE VSYNC ON CRTC 2(4) CRTC 2 FIND C0 MIN(5) CRTC 2 RLAL(6) CRTC 1 BUG OUTI R0 (S) BE00 CHECK (CRTC 1) (DEL) RUN ALL TEST (4 SEC EACH) / Z80A SYNC ON CRTC CNT <> CRTC CAR DISPLAY!! REF C0=0 Df<0 0`0 ~~`0 0`fff~fff~~ xflxlf```bf8ll8ff|``8lvff|lf< <$0 x |v`|fffff>|`lvff8<ff<`flxl8<lffff$> >>>>> >> > 2D!CkZ:=(=({2vD02?F>O!ME ^#V#SfD^#V#SD~23F#~2cF!D"D!&"WDͥEͰF!?EZ[P͋\P͋\\&IQ IY ͋\]I IIII͋\q IITI͋\*fD[D"D!üD#x0))))|N8 } [WD!NR/E:XDNR/E:XDWSWD!#E"D!LKDB"$EFͮZeFͮZ>D͋\HZSD<T?(.&<0 00 10` 20 @30 40 50` 00|006ffff>fff<ll8lfff>|~L2~`> UPD R9=6, R8=3 (+3105)EXIT IVM MODE ON C9=0 >> UPD R9=7, R8=0AUTOSYNC ON PREVIOUS SCREEN TEST: R4=#xx R5=#xxE\ !G<[IZG! F!2FF s#{ _Z>!F>!2G>dT] ZZ= >23G!.G!3G4|g0><@ r#{@8rq######= !@!~w##z !!@!~w##z@ ɌJTKSL]RUMFK_GWYNEJTK:!GkZͰF\II ͋\]I>%!HsH6I#= QTIHZ\/͋\GQIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII!2HkZ: >2tHsI\IIIIII͋\II>yqO!AqI IQai! )>̓\yqQa-iqY=({\>y>=Iy=yy>yI> y>yQYIKQYQY͋\Iq0 IQ IY͋\͋\IILQYHZ-͋\DH>p2hJ!"bJ>SHAKM1V2BIN@t B@t | v``<`<|00|006ffff>fff<ll8l0123456789ABCDEF 0<3? ( ĐДԁ ( "*ç@I!@@II!@@I!m@.1͛@UA*| 2!A2A9]!"!i]!AF2A!GN-A!AN2A! BF2A!AN2A!AF2Af!T-A!A ~2A@@"@AS:A!"!A~_#V@#"@A9AկͥA>0[{202AY!AZ0!sCZ!'Track-Info  R2J>J>o2hJ!%"bJ>2J>z>n2hJ!e"bJ> 2J>f>m2hJ!"bJ> 2J>R>l2hJ!"bJ> 2J>>>k2hJ!%"bJ> 2J>*>j2hJ!e"bJ> 2J>>i2hJ!"bJ>2J>>2@J! JkZNK\IIIIIIIII ͋\Iq͋\p!qIQi( I I@IQ~\aq#IQaIq>?yQY 0IQ IY II͋\I?Ij\II II͋\Iq IQ IY>w#<=w#6#6!^>w<#^=w#6!}6!AZ!^TZ!TZ!B Z LOGON SYSTEM - ONE LINE SPLITTING (RLAL) ON CRTC 2 POC POC POC POC....??&&:=!TkZ\͋\!/YY1͋\!2gWͮZ!C"U\C͋\xo*U #"UCR>2gWͮZ\͋\Iq`Q`\qhQWͮZe%XͮZ\PIXZ>p!hJ021L!&LZ!dLZ!AZq|gUPDATE R13 HERE =====>yy AND ====>xx (yy swap to xx/yy each 1.28secCRTC2 TEST - C4 BEHAVIOUR ON R0=3 (R4=0/R9=7)R0=3 ON C9=0 (EACH C9=DIFFERENT COLOR. YELLOW ON BORDER ONLY)EMU ADVICE : WHEN C9=4, C9=7 IN HSYNC >> SCREEN KO ON REAL CRTC 2? &xJDKSL]RUMFK_GWYNE!LkZ͆M\IIIqII?IIII ͋\Iq͋\!DN  p !IQ͈\qIBYB(͊\IaIIII I͋\IqMHZ9x`AhHgXͮZ`?XͮZaOXͮZ`oXͮZaXͮZeXͮZ\!AIxx_x ez YͮZZ!VZ!VZ/Y~V!5WZ!VZ,- CRTC 1 - BE00 CHECKFROM C0=#3A BEFORE 1ST LIGNE (C9=C0=C4=0), EVERY 6 USEC (INI+INC B) :FROM C0=#20 ON VERY LAST LINE BEFORE C4=R6, EVERY 6 USEC (INI+INC B) :FIRST DETECTION (BIT 5=0) WITH IN A,͋\L!$ObZ!2O<[ZzG!~6## !0""O!MZ!AZo!)NDN~ !'N~#~#*M~'N ##"MLOGON SYSTEM PRESENTS THE 1ST RLAL ON CRTC 2?~;zz;~?~;zz;~?~;zz;~?~;zz;~?~;zz;~?~;zz;~?~;zz;~?~;zz;~?~;zz;??&&JDKSL]RUMFK_GWYNE!OBPP!OSPO!eOkZO\͋\I I͋\(C) WHEN C0=#xxFIRST DETECTION (BIT 5=1) WITH IN A,(C) WHEN C0=#xxSTATUS WHILE R6=0 IN DISPLAY AREA (C4=1,C9=0):#xxSTATUS WHILE R6=0 IN DISPLAY AREA (C4=1,C9=1):#xxSTATUS BEFORE R31 SEL:#xx, AFTER SEL :#xxSTATUS 5 us AFTER R31 READ :#xx, READ VALUE=#xxSTATUS 5 us AFTER R31 WRITE :#xxSTATUS 4 us AFTER STATUS READ :#xxREAD R31, LOOKING STATUS UPDATE IN FULL FRAME (0:NO/1 YES):#xx:q]0"0$:p]0#0%:o]0$0&:n]0%>0>l\>o\>v\1QY QYqI!O?͉\Y"QY QYQYHZ2͋\kO!O??QI1II?I͋\Z!PZ!BP~Z!AZCHECKING BUG OUTI ON R0 UPDATE WHEN C0=0ON C4=C9=0, 1ST R0=49/2ND R0 'OUTI'=6 FOR 14 usec ON C0vs=46ON C4=C9=0, 1ST R0=49/2ND R0 'OUT(C),r8'=6 FOR 14 usec ON C0vs=48>>2P2Q:!PkZQ\M͋\I2III͋\II͋\>=2 Q IÆZZ!> VSYNC OFF>y\>À\>Ã\>Ê\HZE\HZIY(=W*Y:Yw],w2Yz2Yo\><2Y_ > k(2Yͅ\>! w,w:Kyٷ'@[ !YP!Kyٷ'@[ (Bs##|g 9]:n]҆Z!+|ʆZ"SZ!ZZ[Ë\sZ1m@*"SZ!ZZ[ͯA1?(.&0ͮZe@|O |O |g}Po|gO6T]!w?~[#~ [# s]&o))) ~#zW@W s]&o))) ~#{~_>W~(y#~Iy#~Iy# s[I YI QI YI Q ON CRTC 2FAKE VSYNC OK IF SCREEN STABLE!!"Q!QkZQ\I͋\!>Uai= +͋\>=2Q IÆZZ!RZ!?RPZ!A ZTRYING FAKE VSYNC VIA PPI PORT B MIDDLE SCREENFAKE VSYNC OK IF VSYNC BLACK BAND!gRkZS\IQIq͋\!   IQqIBYB(́\IIII͋\Iq IIRHZW ͋\mR!~< !~#"Ro&) S![~< !~#"So&) S!f~< !~##"4So&) S!~< !~#"YS͞S!3~< !~#Track-Info  RI YI QI YI QI YI QI YI QI YIQ1YIH IPH{x Ox (   !Mx0x8x0x8͋\x8M͋\MË\x8x0!\{OB:::z¨\!  x0x8x0x8"]!Mx0x8x0x8͋\x8M͋\M͋\͋\x8!M[]R͋\*]+"]*] > !i]PIXIqI? CIB= Iq  @  Hվ%+/ <8H@<X<|0f8l8vv0 000 0 0f<f<0 0`0 ~~`0 0`fff~fff~~ xflxlf```bf8ll8ff|``8lvff|lf< <$0 x |`````````0000000000`000000000000@`0`00000`0 HH0Ap000000000000```‚A000`00000`0a0000@0000000`@000000a``` @πDdddAddddd`Ad`ddddHLdddH@`````nLܨEʊT̜l̘̈ŀnπ333ܝ̈@ĎM̜MDD̝F^^ EϊTęܜ̘MϊDnEGnEGDnNܝH̘ϋDlGEGϊH̄^ GT̈̈GDGD̀v`|fffff>|`lvff8<ff<`flxl8<lfffffff<ll8lfff>|~L2~`N>  qi ^#VSHr+s"kh?02& !F9kB!? !2 LȀ<(x<̨Px<xx̙33333333" ! 0!0>T] ~#~#~#~++++ x *>"!>"HS>!"!"!;"*ututut u t utututut = !\"!I!A!~2+~Yy+ RVII1 .SCRTDU\X]LEMVFW^@_NGORBSZY[JCKI!@!@@I@``````0AHA`  qAQIy1yvyYQYS !"C!".tutut u t ututututu = 02468:<>!1>0= >&1..q,w<$$-?;;97531?;;:8642?;:;9753?:98:864?987;975?;;;;:86?; ;;;:97?; ; ;;:98>> !nfV@ ! = !@>?;%:09;8F7Q6\5g4r3}21Iy,?ytS^gyS^gqyS^gqyS^qgyS^qgyS^qgyS^qgySq^gySq^gyqS^gySQY! 0C:02222*####"!SB> ^#VSGr+s"bͯh?02 & ! ͯ! ! !" !> ! 0͍!0>͍T] ~#~#~#~++++ x *>"!>"GS>!"!"ututut u t utututut = !"!I!!~2~Yy+ RVII1 .SCRTDU\X]LEMVFW^@_NGORBSZY[JCKI!@!@@I!Mx0x8x0x8ͯx8MͯMïq^gySq^gy!"!I!!~2~Yy+ RVII1 .SCRTDU\X]LEMVFW^@_NGORBSZY[JCKI!@!@@I!Mx0x8x0x8~x8M~M~!{OB:::z›~(y#~Iy#~Iy# s:I YI QI YI QI YI QI YI QI YI QI YI QI YIQ1N!{OB:::z~(y#~Iy#~Iy# skI YI QI YI QI YI QI YI QI YI QI YI QI YIQ1pCRTCTST BIN@OO>0 @{2YIH IPH{y2x O>0 @{2YIH IPH{y2x Ox (   RVICRT1CBINee}I YI QI YI QI YI QI YIQ1! w̓z1eIIIA~> Iyy11!@?q> IqQY Qq1e\YYq! 0C:022*C##"C8S"  ^#VSr+s"~:8*/+"/*#"͓!I͖"~??2 & ! ! !> ! 0͗!0>͗!s,r# x s,r# x * "! "Track-Info  R!Mx0x8x0x8x8MM!{OB:::z ~(y#~Iy#~Iy# sI YI QI YI QI YI QI YI QI YI QI YI QI YIQ1  !\"!I!A!~2+~Yy+ RVII1 .SCRTDU\X]LEMVFW^@_NGORBSZY[JCKI!@!@@IRV BASp33BIN""n CRT "RVLLCRT2.BIN"  Ox  LOGON SYSTEM / LONGSHOT " RVI (CRT 1) /RVLL (CRT 0,2)( ? 2 "CRTCTST" @< CRT()F  "CRTC "; CRTP ,"Z CRT "RVLLCRT0.BIN"<d CRT CRT , CRT"RVICRT1C.BIN""n CRT "RVLLCRT2.BIN" RVLLCRT0BINfI YI QI YI QI YIQ1@?2;9753113579;2?!5 w̓z1T~IIIAIq QY 1!>>  qi ^#VSHr+s"kh?02& !F9kB!? !2 !; !9!7!5!3!-1!;Hiy45i45yiιyi45yiιyiy45iy45i?Yü! ! !" !> ! 0!0>T] ~#~#~#~++++ x *>"!>"HS>!"!"!;"*ututut u t utututut = !\"!I!A!~2+~Yy+ RVII1 .SCRTDU\X]LEMVFW^@_NGORBSZY[JCKI!@!@@ITrack-Info  RTrack-Info  RTrack-Info  RTrack-Info  RTrack-Info  RTrack-Info  RTrack-Info  RTrack-Info  RTrack-Info  RTrack-Info  RTrack-Info  RTrack-Info  RTrack-Info  RTrack-Info  RTrack-Info  R         Track-Info ! R!!!!!!!!!Track-Info " R"""""""""Track-Info # R#########Track-Info $ R$$$$$$$$$Track-Info % R%%%%%%%%%Track-Info & R&&&&&&&&&Track-Info ' R'''''''''