EXTENDED CPC DSK File Disk-Info WinAPE 2.0B03 (Track-Info  RSHAKM1V3BINs SHAKER19BIN SHAKER19BIND!"#$%&'()SHAKER19BAS*CRTCTST BIN+RV BAS,RVICRT1CBIN -.RVII1 SCR/0123456789:;<=>RVII1 SCR{?@ABCDEFGHIJKLMNRVLLCRT0BIN OPRVLLCRT2BIN QR@#"yArAկA>0;t{202ARr!AXs0!DXs!ADXs!B>XsP #= CRTC x! ssKs!AésTKTUL"mJEDI9M CRTC CAR DISPLAY!! REF C0=0 DEFINED FROM THE MICROSEC WHEN CRTC VSYNC SET PPI.PORTB.0=1 !!! GE > 2$F!F"E! "E>2F:>G >2yFx2=F2E!,I"iGI>2yF2=F:>!F  G > 2$F>:G!F@2F"ESE`iE >2E!H"iG02 H!mErG{tIItIIIIII tII>yq,!+qIai IaqY!@t>6tqQFNY=(t,I>yq>Ry>y=yQY IqyQI?Y> y>yqYQYQYIKQYtIq II0 IQ IYt IItIILQY:E  >2E>2F=(2E>2E>2F>2EKs!AXs!GXs!JHXs:!H(!HXs!@Ks!qIr!jIͩs: :E(?!>ͶG!>ͶG!>ͶG>2EGGGGT].w,w,!G!~#w$% >2E 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:SHAKM1V3BIN@8B@8v``<`<|00|006ffff>fff<ll8lf0123456789ABCDEF 0<3? ( ĐДԁ ( "*ç@I!@@II!@@I!m@.1͛@͎A*| 2!AkAͦu!"!u!BFkA!*QNfA!eBNkA!BFkA!BNkA!QBFkA!oBNkA![FfA!BNkA!]BVkA!J~!yBvkAf!"mfA!A ~kA@@"yASsA!"!A~_#VTrack-Info  R!Ir:>(02IJ{tIIIIIItII>yqX!AqI IQai! )>ty>6tqQa-iqY=(t>Iyaq%aqy=yIy&yYqY?YyYIYQYIKQYQYtIq0 IQ IYttIILQY͵r|$táI@G!Jr*r"@K>2K!LK!JEK> -:K=2K( gLsrKs!A!LIXsr! LKL:Kgs!"rL{tQYYIIt 0IQ IY t"S>2RT>>2S!SrT{tIIIIIIIII tIqtp!qIQi( I I@IQtaq#IQaIq>?yQY 0IQ IY IItI?ItII IItIq IQ IY>p!S02U!UXs!UXs!AXsq|gUPDATE R13 HERE =====>yy AND ====>xx (yy swap to xx/yy each 1.28secCRTC2 TEST - C4 It IqtQYtqV! 0aQiY (tt IIIqIutIqI͵r+ tXxw! MrXxKK>Ks! Ms!Mͩs!*M *MPw# 0w# !<͒L<͒Lp< ͒L!?u!AXs!LXs!LXs!L0Xs86~w##BOUNGA! R4=R9=0R4 SEARCH=#7F / R4 FOUND=#xx<==OVERSCAN BITS (TM) ++ :-)OUCH. FAILING TO FIND R4?(.&KTOJOJOJOJOJOJOJL 0<3?(>$> >>>>> >> > 2M!mMr:=(=({2M02BEHAVIOUR 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!^X"W!X"W2X>62dX2X<2X<2X<2X! "V!"V>2V!)Y"W!nY"W! "V!"V>2V!@:"W>2W2V> 2W:!VrͷW{tIIIIII t;?qQYI QYtI0 IQ IYIItIͿtͿtII IQ IYtIIqvW!V͚WXs͵r%t÷V>O!N ^#V#SM^#V#SN~2O#~2O!7N"5N!&"M O+P!NsPtPt{t&IQ IY t]I IIIItq IITIt*M[N"EN!7N#x0))))|N8 } [M!NRͪN:MNRͪN:MWSM!N"5N!LKENB"NPsePsùMt͵rM<T?(.&<0 00 10` 20 @30 40 50` 60 @70 @02 04 06!%QͩsKs!AXs!WOXs!OXs!OXs!OXs"P INTERLACE VM TESTS - C4/C9 COUNTING IN I H Z!@:~w,,,,~w><2W~ <  xwg&Ys!Y!Wr!XͩsKs!XP!XXs!^X`Xs!XXs!X Xs?0(&0JDKSL]RUMFK_GWYNE 0<CRTC 0 - OVF C4 ON COvs=2 WHEN R0 Upd (VAL>1) ON C0vs=1 WHEN R0=1ON C4=6, C9=4 + 5/6 (pink/grey)>> C9=R9=7 (white) LAST LINE CHR & SCRON C9=7, C0=0.1: C4=6 /C0=2 & + C4=7 C9=7.8.9 (3 LINES)C9>>0=CYAN/1=RED/2=PURPLE/3=GREEN/4=BLUE/5=PINK/6=GREY/7=WHITECURRENT R6=07ON C4=6, C9=3 + 4/5 (blue/pink)>> C9=6 (grey) R9=7 NOT LAST LINE CHRON C9=6, C0=0..63 VM PERIOD (MAUVE ZONE)NEXT SCREEN : C4=6, C9=0 >> UPD R9=6, R8=3 (+3105)EXIT IVM MODE ON C9=0 >> UPD R9=7, R8=0AUTOSYNC ON PREVIOUS SCREEN TEST: R4=#xx R5=#xxͲt !QͩsIKs͑P! MP!2MPeP s#{ _2s>!rP>!2~P>dT] 2s2s= >2P!ͩP!P4|g0><@ r#{@8rq######= !@!~w##z !@!~w##z@ ɌJTKSL]RUMFK_GWYNEJTK:!6Qr+P{tII t]I>%!{QsyQ6I#= QTI͵r\/t> C4=6. NO OVF C4!8"W> 22[>02y[<2[2Z!!@:"W>22[>62y[<2[>2Z! |2W2Z}2W!^X"W!X"W:!YrͻZ{tIIIIII t;?qQYI@t I IIq0 IQ IYtIIIͿt IIIItIIq Iq IqvW!Z͚WXs͵rtY!Wr!XͩsKs!XP!XXs![`Xs!8[Xs!e[ Xs!XXsOVF OF C9 FROM C9=7 ON LAST LINE CHR & SCR (C4=R4) (=0)C9=4 >> C9=5/6 (pink/grey)>> C9=R9=7 (white)ON C9=7, C0=0.1>>C4=6 / C0=IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII!Qr: >2QR{tIIIIIItII>yqO!AqI IQai! )>tyqQa-iqY=(t>y>=Iy=yy>yI> y>yQYIKQYQYtIq0 IQ IYttIILQY͵r-tüQ>p2S!"S>2RT>ÏS>o2S!%"S>2RT>z>n2S!e"S> 2RT>f>m2S!"S> 2RT>R>l2S!"S> 2RT>>>k2S!%"S> 2RT>*>j2S!e"S> 2RT>>i2S!Track-Info  R2..63>> C4=7 / C9=7..31 (OVF C9):![r͆\{tIIIA tIq QYt>  !?qAIAYt9qQYAIAYt9qQYAIAYt9qQYaIYͿt QYt IIII͵r?2Y]2H]!> 2Y]>O2^>2H]> 2Y]>O2^2H]02^>2$]!\rͻ]{tI IIIIII IIt I0IGI IIͿtͿtͿtͿt ItII>JyIIIe^gXs!f63>q!qqIIe^gXs!f64>q!qqIqe^gXs>q2Jf!IqIIe!f^gXs!fXs2f|2*f}2/fz24f{29frIIIqtt{tII IIItIͿtIͿtIͿtIttIII II!#x0)))) fs!fR8=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"_g>02hͅgͅg>12hNIIqtIq Iq!$]Ϳ^Xs͵r(t]! ^r!\ͩsKsP^!A@Xs!^Xs!K^Xs!^Xs@!^Xs!XXsI? .#%0R5 STORY : C9 INTERACTION IN VERT. ADJUST. MODER4=10, R5=24, R9=7 / ORANGE BORDER : ADJUST. ZONER6=#09ON LINE 5 IN ADJ. ZONE, R9=10ON LINE 1 IN ADJ. ZONE, R9=3><2^~ < xwg^s!}^!^|g@ ^@ { {@8rq##!_r_{tIIIqII?IIII tIqt!`  p !IQqtͅg>02Yh!t"h!t"&h^g!hXs>=g^gXs>>g^gXs>?g^gXs>12Yhg^gXs>g^gXs*h+"h*&h#"&hg`hsrIIIqt{t IIItItt!#x0))))pqhs!NhR8=3 ON C9=0, C0=#xx : FRAME SIZE=#xxxx usec (R9=7)R8 UPDATE DELAY + 0 FRAME DELAY>2G>2 >2x2hx2 i>02frIqt{t IIIIIMII2I(RtI2I!#x0))))pRfs!f>>2di2oi:!Hir͉i{tMtI2IIItIIt>=2zi IBYB(tIaIIII ItIq`͵r@t_!ar!aͩsKsP!~6## !0"a!D`Xs!AXso!``~ !`~#~#*`~` ##"`LOGON SYSTEM PRESENTS THE 1ST ONE-LINE-SPLITTING (RLAL) ON CRTC 2?~;zz;~?~;zz;~?~;zz;~?~;zz;~?~;zz;~?~;zz;~?~;zz;~?~;zz;~?~;zz;IrKs!i Xs!iZXs!iXsCRTC 2 - TRYING FAKE VSYNC VIA PPI PORT BR2=50 / R3=14 >> VSYNC OFF ON CRTC 2FAKE VSYNC OK IF SCREEN STABLE!!":j!(jr]j{tIt!>Uai= +t>=2Nj IrKs!}jXs!jPXs!A XsTRYING FAKE VSYNC VIA PPI PORT B MIDDLE SCREENFAKE VSYNC OK IF VSYNC BLACK BAND!jrFl{tIQIqt!   IQqIBYB(tIIIItIq IIVk͵rW tj!~< !~#"Wko&) l![~<??&&JDKSL]RUMFK_GWYNE>62sc!b2ct!:>82cuc!bt!&>72sc!b2ct!>92cuc!bt!"2bC_bSbVb:( 2;b>2mb!brͼb{ttI It1QYͿtq QYqI!b?tY"QY QYQYt QY͵r0t"b!b?t?Qt!b?tIII1II?II>JytKs! cXs!2c~Xs!AXsCHECKING BUG OUTI ON R0 UPDATE WHEN C0=0ON C4=C9=0, R9=1, 1ST R0=49/2ND R0 'OUTI'=6 FOR 14 usec ON C0vs=46ON C4=C9=0, !~#"|ko&) 2l!f~< !~##"ko&) l!~< !~#"k l!3~< !~#"k l!e~< !~#"k l&o6,6,6,60000;1z11172v2000v27211z1;1000!msSlͦlɯKs!0s#r#2s#r!>w#<=w#6#6!^>w<#^=w#6!}6!Ads!lds!lXs!B Xs LOGON SYSTEM - ONE LINE SPLITTING (RLAL) ON CRTC 2 POC POC POC POC....??&&:=!-mr{tt!qrq1t!qrq!"Rm{ttxo*Rm(#"RmR>2gos!C"m{ R9=1, 1ST R0=49/2ND R0 'OUT(C),r8'=6 FOR 14 usec ON C0vs=48ON C4=C9=0, R9=1, 1ST R0=49/2ND R0 'OUTI'=13 FOR 14 usec ON C0vs=46!dr!c"bͼb{ttI It1QY QYqI!d?tY"QY QYQYt QY͵r0td !drͶd2Qf>e>e^g!gXs>2Qf<errKs!AXs!fXs!P"_g!drͶdkg^g^g!$gXs͢h^gXsͧh^gXsͭh^gXsͳh^gXsrr2eggs!g^gXs: >2f2[f2h2h>62f2h!f60>I2Jf!IIIIe^gXs!f61>q!IIIIe^gXs!f62>q!IqIITrack-Info  RtCtxo*m #"mCR>2g.ps{ttIq`QtqhQ`pseps{tPIXx`AhHgps`psaps`psa qse0qs{t!AIxx_x ez oqsKs!oXs!oXsqn!oXs![oXsqn!oXs!oXs!oXs!1ppXs!cpXs`!pXs!pXs!pXsP!qXs!3qXsro. gs>,- 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 ff|lf< <$0 x |v`|fffff>|`lvff8<ff<`flxl8<lfffffff<ll8lfff>|~L2~`fff~fff~~ xflxlf```bf8ll8ff|``8lvC4=R6, EVERY 6 USEC (INI+INC B) :FIRST DETECTION (BIT 5=0) WITH IN A,(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:u0"0$:u0#0%:u0$0&:u0%>0>t>t>t>t>t>t>t͵rͲt͵rͶq(=W*Lr:;rw],w2;rz2Mrt><20r_ > k(2Jrt>! w,w:Kyٷ'@rs !VrP!Kyٷ'@rs (Bs##|g ͦu:ur!+|r"r! sstss1m@*"r! ssA1?(.&0se@|O |O |g}Po|gO6T]!w?~rs#~͍s# u&o))) SHAKER19BIN@@aB@@al8lfff>|~L2~`W~(y#~Iy#~Iy# s8tI YI QI YI QI YI QI YI QI YI QI YI QI YIQ1YIH IPH{x Ox (   !Mx0x8x0x8tx8MtMtx8x0!$u{OB:::zu!  x0x8x0x8"{u!Mx0x8x0x8tx8MtMttAf!kʺA~!jʺAN!mGʺA!.B ~ʿA!J^ʺAô@@"ASA!"!.B~_#Vʴ@#"AAկs]>0D{202,27Vߙ!2Vě0!1Gě!Fě!C>ěP #= RMWY~[EggbnP_`ZYXWV}|{zylQXʎӎ܎ #'+/su^rfr}}}}aNoNxQQQQQuHHHHHKKKLLLmG !uPIXIqI? CIB= Iq IQ IYllllllll>X<|0f8l8vv0 000 0 0f<f<0 0`0 ~~`0 0`fff~fff~~ xflxlf```bf8ll8ff|``8lvTrack-Info  RvvwwpvhvvvvvRvvvwwpvhvvvvvsu^rfrCPC SHAKER 1.9 / LONGSHOT. LOGON SYSTEM(1) UPDATE VRAM VS CRTC (79 TST) (F9) MODULE 1(2) SKEW DISP ON R0 RUPTURE (5 TST)(3) INTERRUPT DELAY FROM R2 (18 CALC)(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 1 USEC SCREENS (R0=0) (5 TST)(8) GATE ARRAY PIXELISATION(9) GATE ARRAY INKERISATION (3 TST)(E) GATE ARRAY MODERISATION(R) HSYN/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) (C4=fnc(CRTC)) PREVIOUS R6=R4+3R6=R4+1/FF FROM C0=2 IN V.ADJ ZONE (R5=16) (C4=fnc(CRTC)) PREVIOUS R6=R4+3?(.&'0?(.$'0!O"O!O"N !O"O!"O"N!N-2Oͧ! ai$aY$a-i$aAQIQq!"OI(>^Y#= Q! 0 aqiQ,iY$$aI ÇN'&%$#"! @@@@@@@((((((((@ͷI>Wy!O ě!2Vě!ě!@ě!Oě!Oě!P0ě͂C 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(I) VSYNC CONDITIONS (16 TST)(O) R1 STORIES (7 TST)(P) R6 STORIES (11 TST)(0) CRTC 2 RVMB(CAPS) ANALYZER / FORCED STAB CRTC 0 R0=0 (4 CONF)(CTRL) R5 SCANNER / (TAB) R5 STORIES (INTERACTIVE)(COPY) CRTC 2 OFFSET(DEL) 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 !!!"!yG-H2GO!P!PPě!QPě!!PPě!Pě!!PPě!4QěR1 STORIES(L1)AT #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!O"O!>?2GͧII!̓K@0̓KI$III!?@><2G:G <2 K!I"I!|K"0IT>2 K!I"I!0K"0I>224K<>2 K!LJ"I!-K"0I>124K$!J"I>2 K!JK"0I!J"I>2 K!hK"0I>2K>2%I!H-tIͧI IKIA0̓KII0KI(I ̓K_III I1̓K Hͷ!I*Q-2OͧI>Y>GyI(Qy >Wy (ÊQ.qYqYqYqY->7!C@>8!C?>9!C>>A!C=" RS.R2R!R->R>RͧCIA@ ͷ!gR ě!2Vě!Rě!RěR1TST : C4=R6-1, C9=R9, PREV R1=40, OUT R1>R0 ON C0vs=#25CRTC-VMA'=#C000+(80x24)CRTC-VMA'=#C000+(80x25)!R-͢Uͧ!>qSQ =( B>ͣSQ =(B>TO =(B>͊SQ =(  . Rs6|ƛ!2V ě!IpěI>GyR6 STORIES (3 RUPTURES ON SCREEN)T01-R6=0 IN 5 SEC. (PRESS SPACE, OR WAIT 4 SEC IN AUTO MODE)T02-50 L. PATCHWORK R6=0/8 FROM VERY 1ST LINE OF MIDDLE SCREEN RUPT (C4=0,C9=0)T03-50 L. PATCHWORK R6=0/8 FROM 2ND LINE OF MIDDLE SCREEN RUPTURE (C4=0,C9=1)T04-1ST LINE IN DISPLAY AREA : SEQUENCE R6=0/R6=8/ WHEN R1>R0T05-50 L. FROM 2ND LINE IN DISP AREA : PATCHWORK R6=0/R6=8 WHEN R1>R0><2K 2%Iɾޜ>2qIqIqI=(qI!@ai>(y I@IIY g  6s|g  U"S"(6#6+|g U"SSZ6#6+|g !U"S"6#6+|g >"T266|g> PT+6|g  >g6|g  6|g  76|g  76|g 46|g sT+6+6##|g 1s$UU㾾6#6+|g 1!R_U6#s#r#IU6#s#rs]UR+6+6##|g 166|g  IQ IY>@2L!-$"K> 2K19>B.>2L!#"K>2K18>C>2L!#"K> 2K09>A2`Ly2mLz2|L!K-*Lͧ#I @IYIYIYIY( <̯ͷ!JL ě!2Vě!]LPěR6 STORIES -AGAIN-T06A-ON C4=9/C9=0 PATCHWORK R6=9/25 IN DISP AREA FOR 64 LINES!@"/M! "M!SN"@M!M"\M!%"M>!@"/M! "M!SN"@M!M"\M!"M!@"/M!"M!EN"@M!|M"\M!"M!L-?MͧIYIYIYIYI(@ H!EN'ͷ!eM ě!2Vě!|MPěR6 STORIES -LAST LINE-R6=0Track-Info  R s6|g  s]>02V2KW<2JV>42V>72Wʚ> 28V!2Vě28V!LVě!V4P !Vě!V4P !Vě!W5P !Wě!KW4P CRTC x, TZSV V 1.1, PG 1LD(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=#55LD(HL),#FF VSYNC+6144usec (+ n x 64), OFFSET PTR HL=00!SW-Xͧ!>`UQ =(!^ecË:ͧI>yx2`x2`8<>y>yx2`8)>yx2`8@>yx2`>y! `-ͷ!`ě_^͈_!2Vě!`ěP!)aě!`!ě!H^`!Gaě!ě!`fa͇f b͇fIb͇f{b͇fb͇@!aě! bě!Lbě!~b0ěË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>̓UQ =(!g>SQ =(!>SQ =(!>TQ =(  3 YWs]>72X2 Y24Y2aY>52Y>22JVʚ> 28V!2Vě28V!Xě!XͻXP !Xě! YͻXP !Yě!4YͻXP !CYě!aYͻXP !tYě!YͻXP ~<: >Aw~=@ >9wLD(IX+0),#FF OFFSET PTR IX=00LD(IX+0),E OFFSET PTR IX=00, E=#FFLD(aaaa),DE OFFSET PTR=00, D=#FF E=#55LD(aaaa),IX OFFSET PTR=00, IXH=#FF IXL=#55LD(aaaa),A 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,2 ON C4=2,C9=0,C0inst=5 : PPI.B=#xxEVENT: OUT R7,3 ON C4=3,C9=1,C0inst=34: PPI.B=#xx>b!b4##= ͧ@ II IXxswͧ@I\I IޜXxswͧ:byMXxsw II> 2byI2II!dI.Iͷ!d OFFSET PTR=00, A=#FF!Y-UZͧ!>3TQ =(!6>QTQ =(ITYQ!>nTQ =(I ITYQ!>͈TQ =(I (çYs]>52Z<2[>32JVʚ> 28V!2Vě28V!Zě!ZͻXP !Zě![ͻXP ![ěP!I[ěLDI OFFSET PTR DE=00, (HL)=#FFRRD OFFSET PTR HL=00, A=#0FSET 2,(HL) OFFSET PTR HL=04,05,06,07 (RED+BLACK=UPDATE)RL (HL) OFFSET PTR HL=04,05,06,07 (BLACK=UPDATE)!ě!dě!dě!d́d!d́d>52Fe> 2^e!did!;eě2^e!pe`ě:^ge͇:^gf͇:^g;f͇:^grf͇!eě!eě!fPě!>fě:^gf͇:^gf͇!uf@ě!fě!_ g>f#͇= !fě!2VěfTe͇f\e͇!;e>22Fe>idě!Fe4P ##= Ɏ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[-B\ͧ'U!>UQ =(!:>>UO =(ITYQ!>͢TQ =(IITYQ!>TQ =(I %Ê[s]>62\>A2\>42JVʚ> 28V!2Vě28V!\ě!\ͻXP !\ě!\XP !]ěP!:]ěEX (SP),HL OFFSET PTR SP=00, H=#FF, L=#55CALL Z,aaaa OFFSET PTR SP=00, PC=#FF55RL (IX+0) OFFSET PTR IX=0A,0B,0C,0D (BLACK=UPDATE)INC (IX+0) OFFSET PTR IX=08,09,0A,0B (RED+BLACK=UPDATE)!^3ͷ!] 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=#35 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"g!i"yh>!w2^go==G!i"g!i"yh!81V"]"gx2h#"h"hhs#r!ug-͊]O!S TKTUL>28!M"]"]ͧ*]#"]Mx0*]B>ͧI>Xyh`"^h`"^>yPS^!"!^!H^ͧI>yxw>y#*!^#"!^ͧ I>yxXPh`H!_wsrutqI!86,6y,6,6#6#6#6!ͧI>I!V_-Hc!b!dͰbHc! c!dͰbHc!db]Track-Info  RB"ggi͇>28͛hI!i>I_YͧS .u#= I>y!i<Po-&@~2hFxo~2ixo~2i!hěP #= I>nÿ́|i̓!#iPě!iiě>02qiḮ|i̓!iiě!iěË!h"9!h"9gRs]!2Vě!hěDELAY 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 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)UPD R0=3F ON C0vs=1 (PREVIOUS LINE R0=1) :xxxx(LINE C9=R9/C4<>R4 )!r"sr!r"sr!rr-ͬrͧ I! ͟r $xr>ia=>?2s!z")s!~">ss~!ͮ!ٚ!{ss>@2s!")s!">ss!ͮ!ٚ!ss!s'!sͷ ě!2Vě>7zgms͇!Isě~<2!j )ˈC+j! "j!B"j02k:+j?gk͇!kě+ I IIQIYI I0I q!kO ~w2$j' jͷ!kě!fk!2Věě>Ak!kěP W !kw###R5 SHAKER : MAGIC COCKTAILORIES 1 (R0=R1=63)R8 STORIES 2 (R0=63 / R1=64)(REP DISP BUT SAME OPE. R8 STORIES 1)??(&0JDK:!s-͊|ͧIwIIxIIIIIxI I$I8!qIQAai( Qq<Aai( qQqq< I(IA( Qqq#IIIqq>?y I@II>IIIIq IqII  s:!%u-|ͧI}II~IIIIII I@It!qIQA| / KEY 1 TO 8 TO MODIFY SCANNER SPEEDUPDATE R5 FROM 0 TO 1 ON C0=#00, C9=0?!k-!m"om>2um2el!"l>2l>02lͱlͧI>Ly>Ky!0 Ia IiI!m@~<(=y# Y I>0y Iq[m:umgl͇>(gl͇ cOqO!m N#~#foq*l|0g"l m̓Y!lěklͷ!lj!lPě!měR5 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)><2\m .:el?<2el!m6#6} !m"oQqAiqiqiqiqiq Qqq>7y! aiqI?I I I[I>I IIIIIq IqII><2v:lu 2lu +u>2v2v2/w>2d}>2T{>2v2v2/w> 2d}> 2T{!y> !!z2{>xx[!12: ! yF2{7!!{!y!{> !y> !2{>xx[!12!z:> > n!y> !2{>: ! y>2{!z!01!y> !2{>: ! y>2{!z!0:> > " x2Tx2w02{>12{"z!32"{z2w{2wx24xy2rx"{>m:um<2um "omɒmll l0l#llll_m_m_m_m_m?_m_m_mIII&Iͧ͠!`n?qI9Xx2an$!hn-!i"n!`M"nOq!'q>ͧiqI?I`MXxw#*n#"n*n+"n= !c"8p!1q!G"bp!I.p!G"bp4p!G"bp!>I.p!G"bp4p!#"8p!5q!G"bp!I.p!G"bp4p!G"bp!>I.p!G"bp4p:(!9q>2p> 2qvp2p>2qvp!'q!9q͇N#!q q*2z!w-vzͧIxIIyIIII II !@II IQ IYp!qIQi( aq!IQaIq>?y[QY 0IQ IY III?III IIIq IQ IYII͹x -Ðw><2x!  "xSx|22 }2!! . "xSx"!  "xSx"IaiQQ&a,,,,i%ai$Q>>2y02{>32{!16"{!{"z!12"{2{2z!ny-vzͧIxI!qěP $- "Cqn:angq͇!qAqěAq! "Zr!<>"Vr!1qo> o> !=="Vro:( !=0"Zr> o ͓2Hr>02,rf#n#Dr̓!rAqě>12,rf#n#Dr͇!rAqě"Jp2Lpͧc;?qQYI YYIGxw#!?" q!I͢p!?" qͨp!?" q!>I͢p!?" q"p2pIqI&Iͧ͠IIII ;?qQYI YYII I?IIxw#!P"Cqs]!2Vě!nqě!qPěR0=3F / CRTC IO ONTrack-Info  RIyIIIIIIp!qIQi( IIQaq#IQaIq>?ynQY 0IQ IYI?IIIIq IQ IY>2kx!@!~w##z@ {!z6ě!{ě!j{ě!{ě!2Vě****xx** ****xx** ****xx**R0=3 / TEST FOR CRT 2 (NOT EXCLUSIVE :-)) / YELLOW = BORDER ONLY / C9=R9 NOT IN HSYNCCYAN COLOR >> C9=0 - 1qY=(>IyIq>*y>yq> y>yq>?y IqI>?yTQYQ>KyII IIIIqIILQYFQY $!ͷ!>w,>w,w,> w,w,>w,w,>pw,!B6,C6,.|g0!w|g0!B6,C63,.|g0 !w|g0!ͮ!ٚ!n6#!ě!'ě!'JLFRUKTMx8PXP4CRTC x / C0=0=Red+Magenta/C0=1=Grey/C0=2=Green/C0=3=Blue/B&W Grid=Offset updatedR3A R0=36 RUPT / LINE / 3 UPD R13 COvsio=29,39,49TEST WITH R1=3, R9=7, R4=120!{N#N# !{zW@ UUUUUUUUUU!o}'!}}ͷ!@C}|!ͮ!ٚ!>!2V ě!f|ěR0=7 - RVMB NO BORDER BYTE (CRTC 0)!S}'!}}ͷ!@@A}!H @A}!P)@A}|!|ě!2Vě!ͮx!ٚ!>R0=3 / TEST DISPTMG SKEW VERSUS BORDER / 3RD VERTICAL ZONE: NO SKEW / YELLOW = BORDER ONLYAw#|g0?&x0?&x?&x0JD 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 R13 >>>>>>>>>******** 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 >>>>>>>>>>>>>>>******KSL]RUMFK_GWYNE>2~! 2~!:>2~>y2~$![>2~>2~>q2~>!|2~2~>q2~>2'"!}-*"L~!WG!}Q~>=(.:'=2' $ͷ*ě!ě!2VěË!]Gр:'g͇!€ě!"ͧIIIIIIIIIm II IIIII@I5!? >qqQAayQqqYayqiIqI>K>E&DyQ(>yIIqI>+yI?II yͼ82Xxw!S}'XxT~:7o>(>:=0"0$:<0#** 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 >>>>>>>>>>>>>>>>>******** C0=0.0.0.0??&&0!-Pͧ:,ITJY IQ:TKY IQ d.>y   yɯͷ!JQY!Љě!Pͬ!ͱ!0%:;0$0&::0%>0>>>>> >> q(=W*:w],w2z2><2_ > k(2>! w,w!S}'!}}ͷ!@C}!4@C}! @C} 0z!ͮ!ٚ!>!Ԁě!2Vě!ހě!ě!ě!ěCRTC ANALYZERTEST R01 : R0=0 WHEN R4<>0, R9<>0R4 SYNC FOUND:#xx>>>>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<>0TEST0!ě!>0ͬ͞= !ͱɎ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!"H!"!.">2>2튯2>-2%!"H!"!JT">i2>2>,22!-ͿͧIT>yQYq  !JTiI(( =y, I!KaiI2 JKLM><23> 2;_ !s͞!W-!"ͿͧIT>yxq  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 IDENTIFYiqx҅4hʆ(ZćN<<<<: >22 2ƃ>24F<<<<: >22ƃ>2>2 L!<<<<: >22 2ƃ>2@:Ox2F!~  ~#fo>"!~ 6#!,!-VI>yͧIIIII III>q,!'qIai!  IqqY>7aqqQaiTrack-Info  R !JTI(( =y= II &TKQYQY Iͷʚ!!ě!@ě!$ě!gě!ě!2Vě:>8>2=SPLIT 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 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!^-͙ͧ.E &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 ovf)!ͷ!ě!2VěJKTRESULT OF CRT-R4 & R9 CHECKͧ II*I(QY QY9Xxw$!'"~!d" *~#"~*+"ͧ'Q Y (% ɯͷ!!ě+xg`͇ra͇ !VěP!P>xw# ͞= !2Vě!u0ěMODE 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 >> READABLE MARKER 08 / CRT 3.4 >> R. MARKER 09KDJSLKTUMF^_GRYDW> 9!> !A> !B2x2|2̏}2ݏ!-͸ͧ!I.& .>>(ay IaiiY IQ= <>(ay IaiiY IQ=(>( IIId9Xxw͠#$!"֗!d" *֗#"֗*+"ͧII&Id[7Xxw͠#$!"B!"R!2*B#"B*R#"RͧII II>yI$III7XxwI&III͠#$ͧIIIII$III7Xx<(=2F$!"!d"D *#"*D+"DͧIIIII$IIId_7Xx<(=wI&III͠#$>$ay IaiY IQ=  ͷ!>>U!@>~,˭>͞ !!ě!Pě!2Vě!Q@ě!ě!ʐěɎ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 ONLY IN MODE 2>!11!>!12>!13>!14 !15>!16>"27!-PͧI>X. Q&a Y= Ϳ!fě!}PěR2 UPDATE DURING HSYNCR2=͙w$&͙w$2z2ę{2əͧII@$IQY7Xx!4"u!@"!L":_>27>2,2>2}2}{(2m2~>22~*N#"N2*!2"u!>"!J"!AS"I!@@IB@I!@ w̓zISHAKM1V3.BIN ͓x8x0͓͓͓Kyٷ'@ޛ !ͮP!Kyٷ'@ޛ (Bs##|g ::H!+|H"!^3às[1m@*"!^3}]1?(.&0!~(<(!{ěOKxK#0B / R3=10 / ON C0=#0D0E0F10, OUT R2,#xx (+ R2=#2E ON C0=#23)I I!ͷ!ě!@ě!`ě!ě!Pě!!2VěJKT>>>> >>>2R02ْ!?-́ͧI ! >X. QIia I Y = EͿ!ě!ěR3 UPDATE DURING HSYNCR2=#0B / R3=10 / ON C0=#0D0E0F10, OUT R3,#0x (+ R2=#2E ON C0=#2A)!-!Q͵![ ͛!G]!/|ݖ!e>ě~#lP #= S“!iě!G!Bě!Q!ě!2fΓOx͇e@|O |O |g}Po|gO6T]!w?~ޛ#~# ?&o))) ~#zW@W ?&o))) ~#{P_>W~(y#~Iy#~Iy# sI YI QI YI QI YI QI YI QI YI QI YI QI YIQ1!Mx0x8x0x8x8MM!C{OB:::z4YIH IPH{x Ox (   ͇>,#!Γě:Fg,͇!ě!ě![Ë!P"“ f͇#!ěPREV 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 :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 Track-Info  R         !  x0x8x0x8"ڝ!Mx0x8x0x8x8MMx8!M[ڝR*ڝ+"ڝ*ڝ > !5PIXIqI? CIB= Iqllllllll>X<|0f8l8vv0 000 0 0f<f<0 0`0 ~~`0 0`fCRTCTST BIN@OO>0 @{2YIH IPH{y2x O>0 @{2YIH IPH{y2x Ox (   ff~fff~~ xflxlf```bf8ll8ff|``8lvff|lf< <$0 x |v`|fffff>|`lvff8<ff<`flxl8<lfffffff<ll8lfff>|~L2~`` Iyy11!@?q> IqQY Qq1e\YYq! 0C:022*C##"C8S"  ^#VSr+s"~:8*/+"/*#"͓!I͖"~??2 & ! ! !> ! 0͗!0>͗!s,r# x s,r# x * "! "  @  Hվ%+/ <8H@<!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^gyS`````````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̀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$H"GDGHL^^TȌ@ dD̀ D+ +DH+̨+   !G6:!NA2#< !W~y#~y#02"# (. 0   393A9x(   }}i[[[[^I40    T G^^pp   RVLL2 SCR|||    93ș6<    h@@88     H  Track-Info  R           ^HHV  @@@@@@H}}<^^^<4p@@@@@@@@@@@`@<<<,@@@@@@@@@`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`  qAQIy1yvyYQYQY! 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ï!{OB:::z~(y#~Iy#~Iy# skI YI QI YI QI YI QI YI QI YI QI YI QI YIQ1pTrack-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'''''''''