@L1{j5  $% l0?$)$$Hȱ$ hL `H 0} h?> `  !I PR@1 L I`! S S) H$Ѝ$%`@ LGe$$%`% L$ LY0- HH ?@ 0 h Ę 0: < =;Ң79x 608:23 44 234, 8 4 ,P  ҥ V X0ɀ7Ф`# 21 4 2 L1 } ) 000 X 0 1 2 4 16` Z < A CE0l& 'L\䩏,,09$80}6L|Le1i1`00) ߍ ҍ ) `H) 000 h `ҍ ҩ(ҩҩ`: 0}8` k");1k0 -G$Ș L0 H y8(()(0˥)Nk`$GȘL )L  }L-GzȘ LL )W>\  MHH)H h  yhy||hy}} }{ V ILp> L  ` J u (`H % 6h @H?H`LdJ })LJJLw!,"!,{@F  LA  ! 0E^  }^ E E7EȩEdE/EȩE { ! Vj )Lw    n wy }?7? ( ) w y~ R V LwL n w ) V  Lw y {    }E` , ny{) { V Lwy{) 0BML ML  N L }NLML [ fEqEHȱEqEhi 3Gȹ G KLiL-GziɛiL  L}FREE SECTORSy {H) *Gȩ GȽG GȌiyh%*J >G L[ !NHP } ~h  Ȍ  S IJ0L  L , ` uBj i" ~ }BLV J u0ҩ  d8Hhi i VL,0 LD1:AUTORUN.SYSH  <h`H} @I`N@{ HH`  n L Z `LS2 DJf2)? @3 )D*,D* CD( C2}2C ԠX`H h`ʆ X , 0 00  5 9@  5YD1:RAMDISK.COMj`L8}L%D8:DUP.SYS8ׅ  ۍ n 1?  lTULBDU?6LVD8:MEM.SAVll{}BJ L iB ~0 LDE i V ,0 `DHEh }DEиL$% CC$$%%d$% 0%$%!} DDmLp   % J)Lz J  (( L (y{) "} [L ( yLk0oj Ty y IB [y~C{}|? V#}   wLL   y{)~LzA! ߰")- y" $zzG$}@LL  @  LA  d JJHJJJjh) yLTHY`J)!0  Q L  SIB%}LddJDOS SYSB}%!}"Y5L"P8GN*.COM*.EXENAVD><-+=!*?%% &%z3%$$HEL{*DIR*LOC.CLR.LOA-VER%INI+UNL.FMS.SAV,MODg%CARR*REN?,FME.H'}EAP)BAC_%BONo1DEL.FMD.SUM(RUNm*BOF|1COP3&FMQ.TYP.)EXE$ 1Y5P" O."8""@R'S15%(}0i5i5501ȊԢx5"JFJPWy"HH *5")IAY54 4> 4,0)}L#N #L|*J #L*J #14"4`J # 1Lk*v} 4 *%H$H`)?4 $ 4 #$0 *} 2 4 $ y$, L$LL-19" !"H "H` $ $Ѻ Ѻ걺 2ȱ 4ɛL"ȱH+}H 2e滠滱 u2`> 8e滐`+"`e` y$ 2" 2Execute: W. /p O. ,}/ 1L"*ԆՎ l$ 2 \*L#L)4 % HJJJJ 3. 4h 3 3XFHSEX; 4L4-}"݅pq y$ 2ݹp` %ݱp 3`,5 2`N5 l$ /0 / 1 l$L$$8n" }$ 2pq y$I eppq> .}4pq 3 3p,"0 ' 4 3L& 3`p8pqŠ 2ݑpȥpȄ(` /5D . 5 - #( l/}$ / #(莉5 2Reading: . .ii e֥iש 0( . `1,P3 1S / / 1&0}& 5$?♵5 -8tu E( rȥs(0 O. .Еߥ .8 ' 0( 2Writing: rȱsr* / /1} ,` / 1rs8 E($0 O. . .C .L'5  e . 'Lx&,5PJC`,50 2I2}nsert ( 2sourceL' 2destination 2 & hit key ! #ڭ ҍ5L25`5օtׅu` S2tu /3} 1HrettIseuu(` (x / / O.L1`$0'5 / S2 1XY O.4}8` W.r n( (errstuvw 2LEN: vw 3u 3 2 SUM: st 3rL3 W.$0 * n( ( 4LB)5}N` W.ʆ n( ($0,F (!$0բ 2No COM-File !LO. (8ԨՐυلإ5 * 6}2# 2RUN: E* 3 2INIT: E*L^) * 3 2. ԥ 3- 4֥ 3 2 LEN:إ 3 (L)إL^) 7}( ( 3L3 1 y$T 4T l y$l 2l *" 4 3 * $ $ 4 2 *ݥURL4` 8}, /$0"I" 1 n+,"0e+Di5Ei Q2 1 2 V/8," 29}LV+ԩ 3: 4 4I 4L+ 2D5:1 4 2: $;0+ 2SINGLE 2 DENSITY 2 RAMDISKL* 2ENH:}ANCEDp 2DOUBLE 2QUAD }/5,5$ 1 O.$0 `DOS.SYS8f5ȩU5ȩP5婿t"Y5;}L, / - l$ / /X,L. /,55 5.5 橛5L/LL$ }/ l$ 2 2刄t( 28<}$, 2RUN : y-ft 2INIT: y-ft 1 -$tP`$tPF$6ee=}ȄԄՠ$0֩ /$0 q- /8ਥi S2 L15 4ɛ 2` y$ 2 " 2Load: W.>} /$莞 1 -5 lL"0L2`")i"` 1 . / Q2 1'  Q2 1٠?}0 V/ .L.L2 BLVhihi / -i(i( -8((((.. . `1 1 $ .@}`5  e`,,,,"H 0hZ,!,#,$/ /$0 $0ZL/ -/L. / /L11/2/5A} 5 H.5h5ک5`5c/d/ 5? $08`$0`45 [2519 5B}55 /$05455 /5ED` *50 4`5008f [2R0/@ 2.C}/ȱ 280@0  eiȱ/\FȢɛ  o- *  D.8;+"/+ȱ0"D}LL$Vȱ+F/ڊ u2 80 ? 00 0/+$0Wy`5 ` 2Sure ? 1Q`$O 2es, E}o or bort? 81YN 4(` 'ɛ)YN A 2AL"` * 4 `)  ӆiF}j O.+ /  /$0Ș,J, 1B V0`1 O.:>ݩ,".U * 2 is locked !Unlock file? 1ݐ`G}$ 1УԢ5 )p O. * * 2# 4 3L"IH`:;:` ,ɛ`` u2` *H}hihi 4eiHH` ," 4 2 8`0:` 3` 2iԥiդ o$ԥ(`LL$ 2ԍ2Ս2I}Ԇՠ+22ȱ.6'`0#: AG6  &&`8`芄  (` }$ 2 2 3 J}2=' 38nɛL4ԥ 3 2=.݆ކ&բuݕت 3ߊ, 3HJJJJ 3h) 0:i,  K}4,500 BHI V,L2,"p:ɛUR.* t4 t4^ 81 t4( $x0Nhh`S8R^`倈L}HH`p@BDE-HI V0H-` O. 4L2L"ȱ 4ɛ`D2:*.*pB 5M}0#452"/ $/38%by("arth&"ruchhaeuserc -2eitershan#omputertechnikI"L2L"ȱ 4ɛ`D2:*.*pB 5[0100 ;HDW16V.LST (C)MR.ATARI0110 ;0120 ;EDITED 03-AUG-20040130 ;0140 ;COPY D2:ATARI.MOV0150 ;0160 ;TO HD CYL $XXYY0170O} ;0180 LEN=$B0 ;1 BYTE LEN0190 BUF=$B1 ;2 BYTE BUF-ADD0200 PORT=$D100 ;D500=EXTERN0210 MHD=175 ;HEADS+1600220 MP}SC=64 ;SECTORS+10230 YY=$28 ;LO0240 XX=$1F ;CYLINDER 900+0250 *=$80000260 ;0270 ;BUFFER $3D00-$5B00028Q}0 ;0290 LDA #YY ;YY0300 STA HDCYLL ;CYL LO0310 LDA #XX ;XX0320 STA HDCYLH ;CYL HI0330 LDAR} #$A00340 STA HDHEAD ;HEAD-00350 LDA #$010360 STA HDSECN ;SECTOR-10370 ;0380 JSR OPEN0390 BMI S}STOP0400 NEXT JSR LOAD0410 BMI STOP0420 JSR SEND0430 JMP NEXT0440 STOP JSR CLOS0450 BRK0460 ;0470T} FNM1 .BYTE "D2:ATARI.MOV",$9B0480 ;0490 OPEN LDX #$100500 LDA #$30510 STA $342,X0520 LDA #FNM1&2550530 U} STA $344,X0540 LDA #FNM1/2560550 STA $345,X0560 LDA #$40570 STA $34A,X0580 LDA #$000590 V} STA $34B,X0600 JMP $E456 ;CIO/RTS0610 ;0620 LOAD LDX #$100630 LDA #$7 ;GET0640 STA $342,X0650 W} LDA #$000660 STA $344,X0670 LDA #$40 ;$4000 BUF0680 STA $345,X0690 LDA #$000700 STA $348,XX}0710 LDA #$1B ;6.75 KB0720 STA $349,X0730 JMP $E456 ;CIO/RTS0740 ;0750 CLOS LDX #$100760 LDA #$CY}0770 STA $342,X0780 JMP $E456 ;CIO/RTS0790 ;0800 SEND LDA #3 ;30 SECTORS0810 STA LEN ;7.5 K0820 Z} LDA #$000830 STA BUF ;BUF-LO0840 LDA #$3D0850 STA BUF+1 ;BUF-HI0860 ;0870 JSR DUM ;DUMMY[} SAV0880 LDA #270890 STA LEN0900 JMP HDW ;SAVE TO HD!0910 ;0920 ;0930 ;>>WRITE TO HD<<0940 ;MyIDE-PA\}TCH TURBO!0950 ;(C) 2004 MR.ATARI0960 ;0970 HDDATA = PORT+$00980 HDERRR = PORT+$10990 HDSECC = PORT+$21000 HDSECN = POR]}T+$31010 HDCYLL = PORT+$41020 HDCYLH = PORT+$51030 HDHEAD = PORT+$61040 HDSTAT = PORT+$71050 ;1060 HDW LDA #$011070 ^} STA HDSECC1080 LDA #$311090 STA HDSTAT ;WRITE1100 LDY #$001110 S0 LDA HDSTAT ;WAIT FOR DRQ1120 AND _}#$081130 BNE S11140 DEY1150 BNE S01160 BEQ HDW ;NO DRQ=RETRY1170 S1 LDY #$00 ;SEND DATA1180 S2 `} LDA (BUF),Y1190 STA HDDATA1200 INY1210 BNE S21220 LDA HDSTAT1230 AND #$081240 BNE HDW ;DRQa} SET! RETRY1250 LDY $141260 INC $141270 S3 LDA HDSTAT ;WAIT FOR READY1280 BPL S4 ;MAX 256 FRMS1290 b} CPY $141300 BNE S3 ;WAIT1310 BEQ HDW ;>5 SEC RETRY1320 S4 LDA HDERRR ;WRITE-ERROR?1330 BNE HDW c} ;RETRY1340 ;1350 ;NEXT SECTOR1360 ;1370 INC HDSECN1380 LDA HDSECN1390 CMP #MSC1400 BNE NXOK1410 d} LDA #11420 STA HDSECN1430 INC HDHEAD1440 LDA HDHEAD1450 CMP #MHD1460 BNE NXOK1470 LDA #$A014e}80 STA HDHEAD1490 INC HDCYLL1500 BNE NXOK1510 INC HDCYLH1520 NXOK INC BUF+11530 DEC LEN ;DONE?1f}540 BNE HDW1550 RTS1560 ;1570 DUM INC HDSECN1580 LDA HDSECN1590 CMP #MSC1600 BNE DMO1610 LDA #g}11620 STA HDSECN1630 INC HDHEAD1640 LDA HDHEAD1650 CMP #MHD1660 BNE DMO1670 LDA #$A01680 Sh}TA HDHEAD1690 INC HDCYLL1700 BNE DMO1710 INC HDCYLH1720 DMO INC BUF+11730 DEC LEN ;DONE?1740 BNi}E DUM1750 RTS1760 ;YLL1700 BNE DMO1710 INC HDCYLH1720 DMO INC BUF+11730 DEC LEN ;DONE?1740 BN'(ѩѩѩ 50 S0 {L qD2:ATARI.MOVB(DEJKLVBD@EHILV B k}LV= Lѩ1Ѡ))פȭѭ@ѭɯ  l}ưЗ`ѭ@ѭɯ ư`)פȭѭ@ѭɯ  40100 ;HDW16S.LST (C)MR.ATARI0110 ;0120 ;EDITED 21-JUL-20040130 ;0140 ;COPY D2:ATARI.RAW0150 ;0160 ;TO HD CYL $YYXX0170n} ;0180 LEN=$B0 ;1 BYTE LEN0190 BUF=$B1 ;2 BYTE BUF-ADD0200 PORT=$D100 ;D500=EXTERN0210 MHD=175 ;HEADS+1600220 MSC=6o}4 ;SECTORS+10230 YY=$28 ;LO0240 XX=$1F ;CYLINDER 900+0250 *=$80000260 ;0270 ;BUFFER $3D00-$5B000280 ;p}0290 LDA #YY0300 STA HDCYLL ;CYL LO0310 LDA #XX0320 STA HDCYLH ;CYL HI0330 LDA #$A00340 STq}A HDHEAD ;HEAD-00350 LDA #$010360 STA HDSECN ;SECTOR-10370 ;0380 JSR OPEN0390 BMI STOP0400 NEXT JSRr} LOAD0410 BMI STOP0420 JSR SEND0430 JMP NEXT0440 STOP JSR CLOS0450 BRK0460 ;0470 FNM1 .BYTE "D2:ATs}ARI.RAW",$9B0480 ;0490 OPEN LDX #$100500 LDA #$30510 STA $342,X0520 LDA #FNM1&2550530 STA $344,X05t}40 LDA #FNM1/2560550 STA $345,X0560 LDA #$40570 STA $34A,X0580 LDA #$000590 STA $34B,X060u}0 JMP $E456 ;CIO/RTS0610 ;0620 LOAD LDX #$100630 LDA #$7 ;GET0640 STA $342,X0650 LDA #$000660 v} STA $344,X0670 LDA #$3D ;$3D00 BUF0680 STA $345,X0690 LDA #$000700 STA $348,X0710 LDA #$0w}3 ;0.75 KB0720 STA $349,X0730 JMP $E456 ;CIO/RTS0740 ;0750 CLOS LDX #$100760 LDA #$C0770 STA $34x}2,X0780 JMP $E456 ;CIO/RTS0790 ;0800 SEND LDA #3 ;30 SECTORS0810 STA LEN ;7.5 KB0820 LDA #$00083y}0 STA BUF ;BUF-LO0840 LDA #$3D0850 STA BUF+1 ;BUF-HI0860 ;0870 JSR HDW ;SAVE TO HD!0880 z}LDA #270890 STA LEN0900 JMP DUM ;DUMMY SAV0910 ;0920 ;0930 ;>>WRITE TO HD<<0940 ;MyIDE-PATCH TURBO!0950 ;{}(C) 2004 MR.ATARI0960 ;0970 HDDATA = PORT+$00980 HDERRR = PORT+$10990 HDSECC = PORT+$21000 HDSECN = PORT+$31010 HDCYLL |}= PORT+$41020 HDCYLH = PORT+$51030 HDHEAD = PORT+$61040 HDSTAT = PORT+$71050 ;1060 HDW LDA #$011070 STA HDSECC1080}} LDA #$311090 STA HDSTAT ;WRITE1100 LDY #$001110 S0 LDA HDSTAT ;WAIT FOR DRQ1120 AND #$081130 BNE~} S11140 DEY1150 BNE S01160 BEQ HDW ;NO DRQ=RETRY1170 S1 LDY #$00 ;SEND DATA1180 S2 LDA (BUF),Y1190} STA HDDATA1200 INY1210 BNE S21220 LDA HDSTAT1230 AND #$081240 BNE HDW ;DRQ SET! RETRY1250 } LDY $141260 INC $141270 S3 LDA HDSTAT ;WAIT FOR READY1280 BPL S4 ;MAX 256 FRMS1290 CPY $141300 } BNE S3 ;WAIT1310 BEQ HDW ;>5 SEC RETRY1320 S4 LDA HDERRR ;WRITE-ERROR?1330 BNE HDW ;RETRY1340 ;}1350 ;NEXT SECTOR1360 ;1370 INC HDSECN1380 LDA HDSECN1390 CMP #MSC1400 BNE NXOK1410 LDA #11420 } STA HDSECN1430 INC HDHEAD1440 LDA HDHEAD1450 CMP #MHD1460 BNE NXOK1470 LDA #$A01480 STA HDHEAD}1490 INC HDCYLL1500 BNE NXOK1510 INC HDCYLH1520 NXOK INC BUF+11530 DEC LEN ;DONE?1540 BNE HDW1}550 RTS1560 ;1570 DUM INC HDSECN1580 LDA HDSECN1590 CMP #MSC1600 BNE DMO1610 LDA #11620 STA HD}SECN1630 INC HDHEAD1640 LDA HDHEAD1650 CMP #MHD1660 BNE DMO1670 LDA #$A01680 STA HDHEAD1690 } INC HDCYLL1700 BNE DMO1710 INC HDCYLH1720 DMO INC BUF+11730 DEC LEN ;DONE?1740 BNE DUM1750 RT}S1760 ;YLL1700 BNE DMO1710 INC HDCYLH1720 DMO INC BUF+11730 DEC LEN ;DONE?1740 BNE DUM1750 RT '(ѩѩѩ 50 S0 {L qD2:ATARI.RAWB(DEJKLVBD=EHILV B}LV= Lѩ1Ѡ))פȭѭ@ѭɯ }ưЗ`ѭ@ѭɯ ư`)פȭѭ@ѭɯ 40100 ;DIS16G.LST0110 *=$7B000115 .BYTE 1120120 .BYTE $4F,$00,$400130 .BYTE 15,15,15,15,15,15,15,150140 .BYTE 15,15,}15,15,15,15,15,150150 .BYTE 15,15,15,15,15,15,15,150160 .BYTE 15,15,15,15,15,15,15,150170 .BYTE 15,15,15,15,15,15,15,15}0180 .BYTE 15,15,15,15,15,15,15,150190 .BYTE 15,15,15,15,15,15,15,150200 .BYTE 15,15,15,15,15,15,15,150210 .BYTE 15,1}5,15,15,15,15,15,150220 .BYTE 15,15,15,15,15,15,15,150230 .BYTE 15,15,15,15,15,15,15,150240 .BYTE 15,15,15,15,15,15,15,}150250 .BYTE 15,15,15,15,15,15,15,150260 .BYTE 15,15,15,15,15,15,15,150270 .BYTE 15,15,15,15,15,15,15,150280 .BYTE 15},15,15,15,15,15,150290 .BYTE $4F,$00,$500300 .BYTE 15,15,15,15,15,15,15,150310 .BYTE 15,15,15,15,15,15,15,150320 .BYT}E 15,15,15,15,15,15,15,150330 .BYTE 15,15,15,15,15,15,15,150340 .BYTE 15,15,15,15,15,15,15,150350 .BYTE 15,15,15,15,15,}15,15,150360 .BYTE 15,15,15,15,15,15,15,150370 .BYTE 15,15,15,15,15,15,15,150380 .BYTE 15,15,15,15,15,15,15,150385 .B}YTE 15,15,15,15,15,15,15,150390 .BYTE 15,15,15,15,15,15,150410 .BYTE $41,$00,$7B1110 *=$7C001115 .BYTE 1121120 .BYT}E $4F,$00,$601130 .BYTE 15,15,15,15,15,15,15,151140 .BYTE 15,15,15,15,15,15,15,151150 .BYTE 15,15,15,15,15,15,15,15116}0 .BYTE 15,15,15,15,15,15,15,151170 .BYTE 15,15,15,15,15,15,15,151180 .BYTE 15,15,15,15,15,15,15,151190 .BYTE 15,15,15},15,15,15,15,151200 .BYTE 15,15,15,15,15,15,15,151210 .BYTE 15,15,15,15,15,15,15,151220 .BYTE 15,15,15,15,15,15,15,151}230 .BYTE 15,15,15,15,15,15,15,151240 .BYTE 15,15,15,15,15,15,15,151250 .BYTE 15,15,15,15,15,15,15,151260 .BYTE 15,15,}15,15,15,15,15,151270 .BYTE 15,15,15,15,15,15,15,151280 .BYTE 15,15,15,15,15,15,151290 .BYTE $4F,$00,$701300 .BYTE 15},15,15,15,15,15,15,151310 .BYTE 15,15,15,15,15,15,15,151320 .BYTE 15,15,15,15,15,15,15,151330 .BYTE 15,15,15,15,15,15,1}5,151340 .BYTE 15,15,15,15,15,15,15,151350 .BYTE 15,15,15,15,15,15,15,151360 .BYTE 15,15,15,15,15,15,15,151370 .BYTE }15,15,15,15,15,15,15,151380 .BYTE 15,15,15,15,15,15,15,151385 .BYTE 15,15,15,15,15,15,15,151390 .BYTE 15,15,15,15,15,15},151410 .BYTE $41,$00,$7C .BYTE 15,15,15,15,15,15,15,151385 .BYTE 15,15,15,15,15,15,15,151390 .BYTE 15,15,15,15,15,15{{pO@}OPA{||pO`}Op}A|OpS0100 ;AVI16G.LST (C) MR.ATARI0110 ;0120 ;MOVIE VIEWER IN ASSEMBLY0130 ;MODIFIED 08-AUG-20040140 ;0150 ;MOVIE AND SOUND O }N HD0160 ;START = CYLINDER $YYXX0170 ;0180 ;VIDEO: 64X216 16 GREY 8FPS 4:30190 ;OR : 80X172 16 GREY 8FPS 2:10200 ;AUDI }O: 6.144 KHZ0210 ;THIS IS THE BEST I CAN DO....0220 ;0230 ;IDE-RATING: 60 K/S0240 ;CURRENT CODE: 60 K/S0250 ;0260 ;AU }DIO-BUFFER 1:$3D00-$4000 0.750270 ;AUDIO-BUFFER 2:$5D00-$6000 KB0280 ;VIDEO-BUFFER 1:$4000-$5B00 6.750290 ;VIDEO-BUFFER 2: }$6000-$7B00 KB0300 ;VIDEO-DISPLAY ;$7B00,$7C000310 ;0320 SB1=$3D ;SOUNDBUF-10330 SB2=$40 ;END BUF-10340 }SB3=$5D ;SOUNDBUF-20350 SB4=$60 ;END BUF-20360 VL1=$7B ;DISPLAY-10370 VL2=$7C ;DISPLAY-20 }380 LLN=30 ;7.5 K0390 BUF=$B0 ;2 BYTES IDE0400 ;SBF IN CODE ! ;2 BYTES IRQ0410 LEN=$B4 ;IDE LOAD }-LEN0420 TPY=$B5 ;IRQ TEMP-Y0430 SST=$B7 ;IRQ STATUS0440 TMP=$B8 ;IDE TMP0450 PORT=$D100 ;D500=EX }TERN0460 MHD=175 ;HEADS+1600470 MSC=64 ;SECTORS+10480 YY=$00 ;LO0490 XX=$1F ;CYLINDER 900+0500 ;0510 } *=$80000520 LDA #$A0 ;SETUP IDE-1 !0530 STA HDHEAD0540 LDA #YY0550 STA HDCYLL0560 LDA #XX0 }570 STA HDCYLH0580 LDA #$010590 STA HDSECN0600 ;0610 LDA #$00 ;DISABLE NMI0620 STA $D40E ;SE }TUP NMI0630 LDA #NMI&255 ;FOR VBUF!0640 STA $2220650 LDA #NMI/2560660 STA $2230670 SEI ; }DISABLE IRQ0680 LDA #$1B ;SETUP IRQ0690 STA $D200 ;6144 HZ0700 LDA #$010710 STA $D202 ;1.79MHZ/16 }BIT !0720 LDA #SIRQ&2550730 STA $2160740 LDA #SIRQ/2560750 STA $2170760 ;0770 LDA #$00 ;SETU }P MISC0780 STA BUF ;LO0790 STA SBF+1 ;LO0800 STA $230 ;DISPLAY-LO0810 LDA #SB10820 STA SB }F+2 ;SET BUF-IRQ0830 LDA #VL10840 STA $231 ;SET DISPLAY0850 LDA #$21 ;SMALL0860 STA $D4000870 } LDA #$400880 STA $D01B ;GREY0890 ;0900 LDA #30910 STA SST ;SET EMPTY0920 JSR SGET ;FILL BU }FFERS0930 JSR SGET0940 ;0950 LDA #$02 ;SET IRQ0960 STA $10 ;ONLY POKEY#20970 STA $D20E ;NOTHIN }G ELSE!0980 LDA #$50 ;POK1->POK20990 STA $D208 ;POK1=1.79MHZ1000 LDA #$C01010 STA $D40E ;START NM }I1020 CLI ;START IRQ1030 ;1040 LOOP LDA SST1050 BEQ LOOP1060 JSR SGET ;FILL BUFFERS1070 JM }P LOOP1080 ;1090 HDDATA = PORT+$01100 HDERRR = PORT+$11110 HDSECC = PORT+$21120 HDSECN = PORT+$31130 HDCYLL = PORT+$41 }140 HDCYLH = PORT+$51150 HDHEAD = PORT+$61160 HDSTAT = PORT+$71170 ;1180 HGET LDA HDSTAT ;DRIVE READY?1190 BMI HGET } ;NO!1200 LDA #LLN ;BLOCK-LOAD1210 STA HDSECC ;MULTI-SECTOR1220 STA LEN1230 LDA #$211240 ST }A HDSTAT1250 ;1260 SB LDA HDSTAT ;CHECK DRQ1270 AND #$08 ;WAIT FOR IT!1280 BEQ SB1290 ;1300 S6 LDY #$00 } ;GET DATA/MULTI1310 S7 LDA HDDATA1320 STA (BUF),Y1330 INY1340 BNE S7 ;256 BYTES1350 INC BUF+113 }60 DEC LEN1370 BNE S6 ;BLOCK-MODE1380 ;1390 INC HDSECN1400 LDA HDSECN1410 CMP #MSC1420 BNE } NXOK1430 LDA #11440 STA HDSECN1450 INC HDHEAD1460 LDA HDHEAD1470 CMP #MHD1480 BNE NXOK1490 } LDA #$A01500 STA HDHEAD1510 INC HDCYLL1520 BNE NXOK1530 INC HDCYLH1540 ;1550 NXOK LDA $D3001560 }CMP #$F71570 BEQ FFF ;FAST FORWARD1580 LDA $D3001590 CMP #$FB1600 BEQ FFB ;FAST BACKWARD1610 FFE } RTS1620 ;1630 FFF CLC1640 LDA HDCYLL1650 ADC #$021660 STA HDCYLL1670 LDA HDCYLH1680 ADC #$001690 } STA HDCYLH1700 RTS1710 FFB SEC1720 LDA HDCYLL1730 SBC #$021740 STA HDCYLL1750 LDA HDCYLH1760 } SBC #$001770 STA HDCYLH1780 RTS1790 ;1800 ;SOUND-IRQ BY MR.ATARI (C)20041810 ;SOUND BY POKEY #1, IRQ BY #21 }820 ;BUFFER UNDERRUN: AUDIO STOPS1830 ;SIMPLE CODE TO REDUCE CYCLES!1840 SIRQ PHA ;SAVE A1850 LDA #$FD1860 } STA $D20E1870 LDA #$021880 STA $D20E ;RESET IRQ1890 LDA SST ;BUFFERS OK?1900 CMP #$03 ;NO ! }1910 BEQ IRQE ;EXIT !1920 SBF LDA $FFFF ;SET ON INIT1930 STA $D2011940 INC SBF+11950 BNE IRQE196 }0 IRQ2 INC SBF+21970 LDA SBF+21980 CMP #SB21990 BNE IRQ32000 LDA SST ;SET 1 EMPTY2010 ORA #$ }012020 STA SST2030 LDA #SB3 ;SET SBUF2040 STA SBF+22050 LDA #VL2 ;SET DIS2060 STA $2312070 } BNE IRQE2080 IRQ3 CMP #SB42090 BNE IRQE2100 LDA SST ;SET 2 EMPTY2110 ORA #$022120 STA SST2 }130 LDA #SB1 ;SET SBUF2140 STA SBF+22150 LDA #VL1 ;SET DIS2160 STA $2312170 IRQE PLA2180 RT }I2190 ;2200 ;FILL CORRECT BUFFER. 1>2!2210 ;2220 SGET LDA SST2230 STA TMP ;UNDERRUN?2240 AND #12250 }BEQ SGE1 ;GET BUF22260 LDA #SB1 ;GET BUF12270 STA BUF+12280 BNE SGE22290 SGE1 LDA #SB32300 STA B }UF+12310 SGE2 JSR HGET2320 ;2330 LDA TMP ;UNDERRUN-BUF2340 AND #$01 ;DURING HGET2350 BEQ SGE4 ;TO }TOGGLE BIT2360 LDA SST2370 AND #$FE2380 STA SST ;CLEAR BIT12390 RTS2400 SGE4 LDA SST2410 AN }D #$FD2420 STA SST ;CLEAR BIT22430 RTS2440 ;2450 ;SCREEN NMI TO UPDATE DISPLAY2460 ;2470 NMI LDA $231248 }0 STA $D403 ;THATS ALL!2490 JMP $E462 ;RTI2500 ;50 ;SCREEN NMI TO UPDATE DISPLAY2460 ;2470 NMI LDA $231248 ?|ѩѩѩѩԩt"#xҩҩ0={1!ԩ@Щ K KҩPҩX $}KLr0х!ѭ)ёƴѭ@ѭɯ ѭ`iѭi`8$}`Hҩҥ;0@ ]|1` ={1h@)=] |))`)$}`1Lbҩҥ;0@ ]|1` ={1h@)=] |))`)$ 0100 ;AVI16B.LST (C) MR.ATARI0110 ;0120 ;MOVIE VIEWER IN ASSEMBLY0130 ;MODIFIED 08-AUG-20040140 ;0150 ;MOVIE AND SOUND O(}N HD0160 ;START = CYLINDER $YYXX0170 ;0180 ;VIDEO: 64X216 16 GREY 8FPS 4:30190 ;OR : 80X172 16 GREY 8FPS 2:10200 ;AUDI(}O: 6.144 KHZ0210 ;THIS IS THE BEST I CAN DO....0220 ;0230 ;IDE-RATING: 60 K/S0240 ;CURRENT CODE: 60 K/S0250 ;0260 ;AU(}DIO-BUFFER 1:$3D00-$4000 0.750270 ;AUDIO-BUFFER 2:$5D00-$6000 KB0280 ;VIDEO-BUFFER 1:$4000-$5B00 6.750290 ;VIDEO-BUFFER 2:(}$6000-$7B00 KB0300 ;VIDEO-DISPLAY ;$7B00,$7C000310 ;0320 SB1=$3D ;SOUNDBUF-10330 SB2=$40 ;END BUF-10340 (}SB3=$5D ;SOUNDBUF-20350 SB4=$60 ;END BUF-20360 VL1=$7B ;DISPLAY-10370 VL2=$7C ;DISPLAY-20(}380 LLN=30 ;7.5 K0390 BUF=$B0 ;2 BYTES IDE0400 ;SBF IN CODE ! ;2 BYTES IRQ0410 LEN=$B4 ;IDE LOAD(}-LEN0420 TPY=$B5 ;IRQ TEMP-Y0430 SST=$B7 ;IRQ STATUS0440 TMP=$B8 ;IDE TMP0450 PORT=$D100 ;D500=EX(}TERN0460 MHD=175 ;HEADS+1600470 MSC=64 ;SECTORS+10480 YY=$00 ;LO0490 XX=$1F ;CYLINDER 900+0500 ;0510 (} *=$80000520 LDA #$A0 ;SETUP IDE-1 !0530 STA HDHEAD0540 LDA #YY0550 STA HDCYLL0560 LDA #XX0(}570 STA HDCYLH0580 LDA #$010590 STA HDSECN0600 ;0610 LDA #$00 ;DISABLE NMI0620 STA $D40E ;SE(}TUP NMI0630 LDA #NMI&255 ;FOR VBUF!0640 STA $2220650 LDA #NMI/2560660 STA $2230670 SEI ;(}DISABLE IRQ0680 LDA #$1B ;SETUP IRQ0690 STA $D200 ;6144 HZ0700 LDA #$010710 STA $D202 ;1.79MHZ/16(}BIT !0720 LDA #SIRQ&2550730 STA $2160740 LDA #SIRQ/2560750 STA $2170760 ;0770 LDA #$00 ;SETU(}P MISC0780 STA BUF ;LO0790 STA SBF+1 ;LO0800 STA $230 ;DISPLAY-LO0810 LDA #SB10820 STA SB(}F+2 ;SET BUF-IRQ0830 LDA #VL10840 STA $231 ;SET DISPLAY0850 ;WIDELDA #$21 ;SMALL0860 ;SCRNSTA $D4000870 (} LDA #$400880 STA $D01B ;GREY0890 ;0900 LDA #30910 STA SST ;SET EMPTY0920 JSR SGET ;FILL BU(}FFERS0930 JSR SGET0940 ;0950 LDA #$02 ;SET IRQ0960 STA $10 ;ONLY POKEY#20970 STA $D20E ;NOTHIN(}G ELSE!0980 LDA #$50 ;POK1->POK20990 STA $D208 ;POK1=1.79MHZ1000 LDA #$C01010 STA $D40E ;START NM(}I1020 CLI ;START IRQ1030 ;1040 LOOP LDA SST1050 BEQ LOOP1060 JSR SGET ;FILL BUFFERS1070 JM(}P LOOP1080 ;1090 HDDATA = PORT+$01100 HDERRR = PORT+$11110 HDSECC = PORT+$21120 HDSECN = PORT+$31130 HDCYLL = PORT+$41(}140 HDCYLH = PORT+$51150 HDHEAD = PORT+$61160 HDSTAT = PORT+$71170 ;1180 HGET LDA HDSTAT ;DRIVE READY?1190 BMI HGET(} ;NO!1200 LDA #LLN ;BLOCK-LOAD1210 STA HDSECC ;MULTI-SECTOR1220 STA LEN1230 LDA #$211240 ST(}A HDSTAT1250 ;1260 SB LDA HDSTAT ;CHECK DRQ1270 AND #$08 ;WAIT FOR IT!1280 BEQ SB1290 ;1300 S6 LDY #$00 (} ;GET DATA/MULTI1310 S7 LDA HDDATA1320 STA (BUF),Y1330 INY1340 BNE S7 ;256 BYTES1350 INC BUF+113(}60 DEC LEN1370 BNE S6 ;BLOCK-MODE1380 ;1390 INC HDSECN1400 LDA HDSECN1410 CMP #MSC1420 BNE(} NXOK1430 LDA #11440 STA HDSECN1450 INC HDHEAD1460 LDA HDHEAD1470 CMP #MHD1480 BNE NXOK1490 (} LDA #$A01500 STA HDHEAD1510 INC HDCYLL1520 BNE NXOK1530 INC HDCYLH1540 ;1550 NXOK LDA $D3001560 (}CMP #$F71570 BEQ FFF ;FAST FORWARD1580 LDA $D3001590 CMP #$FB1600 BEQ FFB ;FAST BACKWARD1610 FFE(} RTS1620 ;1630 FFF CLC1640 LDA HDCYLL1650 ADC #$021660 STA HDCYLL1670 LDA HDCYLH1680 ADC #$001690(} STA HDCYLH1700 RTS1710 FFB SEC1720 LDA HDCYLL1730 SBC #$021740 STA HDCYLL1750 LDA HDCYLH1760 (} SBC #$001770 STA HDCYLH1780 RTS1790 ;1800 ;SOUND-IRQ BY MR.ATARI (C)20041810 ;SOUND BY POKEY #1, IRQ BY #21(}820 ;BUFFER UNDERRUN: AUDIO STOPS1830 ;SIMPLE CODE TO REDUCE CYCLES!1840 SIRQ PHA ;SAVE A1850 LDA #$FD1860 (} STA $D20E1870 LDA #$021880 STA $D20E ;RESET IRQ1890 LDA SST ;BUFFERS OK?1900 CMP #$03 ;NO !(}1910 BEQ IRQE ;EXIT !1920 SBF LDA $FFFF ;SET ON INIT1930 STA $D2011940 INC SBF+11950 BNE IRQE196(}0 IRQ2 INC SBF+21970 LDA SBF+21980 CMP #SB21990 BNE IRQ32000 LDA SST ;SET 1 EMPTY2010 ORA #$(}012020 STA SST2030 LDA #SB3 ;SET SBUF2040 STA SBF+22050 LDA #VL2 ;SET DIS2060 STA $2312070(} BNE IRQE2080 IRQ3 CMP #SB42090 BNE IRQE2100 LDA SST ;SET 2 EMPTY2110 ORA #$022120 STA SST2(}130 LDA #SB1 ;SET SBUF2140 STA SBF+22150 LDA #VL1 ;SET DIS2160 STA $2312170 IRQE PLA2180 RT(}I2190 ;2200 ;FILL CORRECT BUFFER. 1>2!2210 ;2220 SGET LDA SST2230 STA TMP ;UNDERRUN?2240 AND #12250 (}BEQ SGE1 ;GET BUF22260 LDA #SB1 ;GET BUF12270 STA BUF+12280 BNE SGE22290 SGE1 LDA #SB32300 STA B(}UF+12310 SGE2 JSR HGET2320 ;2330 LDA TMP ;UNDERRUN-BUF2340 AND #$01 ;DURING HGET2350 BEQ SGE4 ;TO (}TOGGLE BIT2360 LDA SST2370 AND #$FE2380 STA SST ;CLEAR BIT12390 RTS2400 SGE4 LDA SST2410 AN(}D #$FD2420 STA SST ;CLEAR BIT22430 RTS2440 ;2450 ;SCREEN NMI TO UPDATE DISPLAY2460 ;2470 NMI LDA $231248(}0 STA $D403 ;THATS ALL!2490 JMP $E462 ;RTI2500 ;50 ;SCREEN NMI TO UPDATE DISPLAY2460 ;2470 NMI LDA $231248(?wѩѩѩѩԩo"#xҩҩ 0= {1@Щ F FҩPҩX FLm-}0х!ѭ)ёƴѭ@ѭɯ ѭ`iѭi`8ѭ-}`Hҩҥ; 0 @ ] |1` = {1h@)=] w))`)`1-}Lbҩҥ; 0 @ ] |1` = {1h@)=] w))`)`1,0100 ;DIS16G.LST0110 *=$7B000120 .BYTE 112,112,112,1120130 .BYTE $4F,$10,$400140 .BYTE 15,15,15,15,15,15,15,150150 1}.BYTE 15,15,15,15,15,15,15,150160 .BYTE 15,15,15,15,15,15,15,150170 .BYTE 15,15,15,15,15,15,15,150180 .BYTE 15,15,15,151},15,15,15,150190 .BYTE 15,15,15,15,15,15,15,150200 .BYTE 15,15,15,15,15,15,15,150210 .BYTE 15,15,15,15,15,15,15,1502201} .BYTE 15,15,15,15,15,15,15,150230 .BYTE 15,15,15,15,15,15,15,150240 .BYTE 15,15,15,15,15,15,15,150250 .BYTE 15,15,15,1}15,15,15,15,150260 .BYTE 15,15,15,15,150270 .BYTE $4F,$00,$500280 .BYTE 15,15,15,15,15,15,15,150290 .BYTE 15,15,15,151 },15,15,15,150300 .BYTE 15,15,15,15,15,15,15,150310 .BYTE 15,15,15,15,15,15,15,150320 .BYTE 15,15,15,15,15,15,15,1503301 } .BYTE 15,15,15,15,15,15,15,150340 .BYTE 15,15,15,15,15,15,15,150350 .BYTE 15,15,15,15,150360 .BYTE $41,$00,$7B1050 1 }*=$7C001120 .BYTE 112,112,112,1121130 .BYTE $4F,$10,$601140 .BYTE 15,15,15,15,15,15,15,151150 .BYTE 15,15,15,15,15,151 },15,151160 .BYTE 15,15,15,15,15,15,15,151170 .BYTE 15,15,15,15,15,15,15,151180 .BYTE 15,15,15,15,15,15,15,151190 .BYT1 }E 15,15,15,15,15,15,15,151200 .BYTE 15,15,15,15,15,15,15,151210 .BYTE 15,15,15,15,15,15,15,151220 .BYTE 15,15,15,15,15,1}15,15,151230 .BYTE 15,15,15,15,15,15,15,151240 .BYTE 15,15,15,15,15,15,15,151250 .BYTE 15,15,15,15,15,15,15,151260 .B1}YTE 15,15,15,15,151270 .BYTE $4F,$00,$701280 .BYTE 15,15,15,15,15,15,15,151290 .BYTE 15,15,15,15,15,15,15,151300 .BYT1}E 15,15,15,15,15,15,15,151310 .BYTE 15,15,15,15,15,15,15,151320 .BYTE 15,15,15,15,15,15,15,151330 .BYTE 15,15,15,15,15,1}15,15,151340 .BYTE 15,15,15,15,15,15,15,151350 .BYTE 15,15,15,15,151360 .BYTE $41,$00,$7C51330 .BYTE 15,15,15,15,15,0`{{ppppO@OP5}A{||ppppO`5}OpA|4n)6^^<s3>00x|73>00x`c6<9c` 33c366fffg~33>00xgfffff<9}11111{!!\]_p\ED!EOHI B V`}   9} TURBO-BASIC XL 1.5 (c) 1985 Frank Ostrowski!  ӥL]""$$ (p9}%J[WܠjeC /D%Zub2gTSt$8®݊Ò2% 5R9}Ţtd.’$3@X7t5w5$?## $#L+D:*.*S:C:P:$#.#) `:#(6ENeU\l؏&/ؕ؄sأ$9}LENeU\lأ$8آǔƐƉƐƇ4cY%٦rULۉCۄړp^gyض%iwܸJڅ*ܣ$ڭڞجئأأ9}$ ,(""(222000000..222222222222222222222222222222**22*22(222(2222222222 ,(""(9}0000000--**2*(22(2222222 V`hh@,lHH$HHHHHHӍl"9}H$HHl $`GHFH\` ` 4ӭ l 4Lq ӠԪӅԆL} Ӡ L( 9}) ` b% +L:#HH 0 HHLj%ӥHlL{ee 8eee9}eӦee褢%ƚƜ`88夅奅89 }夕奕Ӡȱȱȱ㦢`L+`8` .E)))8@8e0 9!}*څۅ܅݅ޅ߄ԠF0y"ޥy"ݥy"ܥy"ۥy"ڥy"و0ǠF0y"ݥy"ܥy"ۥy"ڥy"٥y"؈9"}0ǠF0y"ܥy"ۥy"ڥy"٥y"إy"׈0ǠF0y"ۥy"ڥy"٥y"إy"ץy"ֈ09#}ǠF0y"ڥy"٥y"إy"ץy"֥y"Ո0L-`8`E)))8i@0 *ڄԠ9$}"("!""" "L**""""""&О"("!""9%}" "L**""""""&О"("!""" "L**9&}""""""&О"("!""" "L**""""9'}""&О"("!""" "L**""""""&Оd9(}"("!""" "L**""""""&ОL-6"e"9)}"e""e""e""e""i""}"""}"""}"""}"""}"""}""ǭ"m"""m"9*}""m"""m"""m"""m"""}"""}"""}"""}"""}"""}""ǥՅօׅ؅مԅՅօ9+}ׅ؅`` ` ` `80 `ԥՅ +.JJJJ)iFiFi1FicFi'ȐȦoFiU9,}ȐFiiFi#iFiGi Fii@F iiFiiciՊFigi'iՊօשBL-`I9-}))83Ԥԥդե֤֥פץؤإ٤L,K6"ХL--L--L-9.}-E0:e٥eإeץe֥eՐ؅٥ׅإօץՅ֩L-8٥إץ֥հ'I89/}م٘؅ؘׅטօ֘ՅL-ؤm\G0Q@Ն֩م؅2եمֆשم"ե؅֥م׆ةեׅ֥90}؅ץم؆لԘ)q +` . |. &7i |. ,%!L?.`刱䈱㈱∱91}ሱ`ԅՅօׅ؅م`ԍՍ֍׍؍ٍ`ԍՍ֍׍؍ٍ`L.L. Խսֽ92}׽ؽ` L%/`ӽޕ &ԅ)@إ)JJJe)e - M93} 1. &Je0F 2 . /L(8`@ԠՈքׄ؄` . |. , . . |. , #/L(8`0 I@ԥ)94} 2f / . & r 1. #/ &?P , .Iiԩ +)ԅ ,ӽޕL(`8`$95})Ԧ61718191:1;1 (ť)8@0$Յ)e)e -F . / , . &1 1.96} #/ &F I`U9>`D'RFuCU?b9dYdg@W2@?tS)%)@0)%ԅԢ / . &G 97} 1.Ӱ6 #/ &.ӽߕ ,ԅԥ B1 (`8``0?i? . . / , #/ &ԍՍ98}֍׍؍ٍ . . ( / , O2 / ,0 .JeF 2`L+) .e٥eإeץe֥e99}Պi؊؅٥ׅإօץՅֆե1ԥ'JffffJffffJffffJffffم`ԩ&&&&*&&&&*&&&&*&9:}&&&*`Pi`)JJJeԅԘ)Peԅ`եԆ8@EB)JJJeԅԥ)PeԅԘ)3eԅԽ3eՅ՘)JJJ}39;}}3`)JJJeԅԥ)PeԅԹ3eԅԹ3eՅդЧ` 0@P`'Nu pX@(#d,X L(  兢9<}0襙 bɥ⥋㩀 50ɥ0DȱȱȄ   ik#ZMkVgğe拰ㅋ9=}⅊0 eee拰 L f5дƨħ 4LY4 f5К,樥ŧH 4h h5L4樤ܱ.* O %309>}  5Ԅ +(fԤԈ`ř嚰Ԥ`ڥۥड़0-԰eڅڐۈ0eeL+58` 9?}O#`,#5  6`]5 6DE 68DHEIHI V0$ 6Sл B9@} V,# 6` $#LllBHI V0HH V0Ԩh``{a$%Ȏ$$xө$Ѝ$ `9A} `@X a Ӆʩ ʎD  _ɠ %` ɩHH `өL: g% D9B}:AUTORUN.TBSөjJHH`ՠԢӱԙ!ӹ!`֝DEIHB V0Y|ڝDa۝E9C}օܥׅݥܝHݝI V0+Ӡڑڑ0`l `  䅠 _ɠԐ9D}e拢 &L &Lħ © ¥4 䥝ň剰' k ɀ8@4= LY ĩ`OJ ]J?L9E} KԪȱLRHHצ R, hhLRHHHHHH /0ȑȑޠhhhhh9F}h`HHHHHHHHHH $H bɐhȥLHhhhhLň剰)9G}i桰` )``L(兢ħ #$ x Hҩ h$襚ҥ ԝ`9H} UV #T` ` `,H ¥ȍ` JKhLŢ  #)I L ¤Ȣ`L¦ ¦ Lĩ9I} ½J*K+ $LąLĩ …L~ …`H Ġh é`,H hH Ġ  ĭ 8}}9J} L n [h`LkL © 8倝偝 Ġ  ĥ󥃅  Lĩ LH9K} éLH#h ĩ`H hKJ L+ , H hHHħ s hKhJ  Lĩ# qL 9L} ŘL ũ& QŽLM " ĽNL  ĥԝL՝M  ĥԝN%LV  ¤ħ` Ťħ` ƪ Ċ 9M}Ťħ` ¢`届 x݅ L ĽCӠɀ L]Ɉ L] Ln LŠI9N}HEDBL$HH hh +L `ħ LĢl ¦`YDAER ԅՅ֦9O}󅗄`L+ ¢p 0 Hp hɈL` ,#,$,!Lé ,H ĥDEԝH՝Ih L9P}©L $`L© , k ĩԅ  + ĥ 夨ħ`2ƪƪ ! A!Ƚa!Ƚ!Ƚ!Ƚ!Ƚ!9Q}``氤hhL1@$ƪư 0 0 n$P`L+FҐ֥װ綾إٰو LǠFf9R}ؐ ee&ee* &eeeԪeըee$.ƪ@!Ƚ`!Ƚ!Ƚ!Ƚ!Ƚ!`檦9S}!!!!`!@!^!` Ȅ 8 n奱 ٥Lǥ֤צưĘ=ŗ78֪א& 9T} eԥe$`L: L ԅՅօׄ 1פ& ٤ţĢԅeՅe8包卅 ]&9U} 8Ԩժ%אְ`ֆL夨ħ` FҰg8&0ei֥i0Tׅiإi0BJe؅eم0&f9V}fff&0 &0 eeL+օפإ颎 %8包ԥ卅 L ɥ 9W}ȱъŠe拰8``,ªȱȱI ѝ3ȥLɥHHO]9X}  ȥe暰Х ȥL+ʅȱhh`Lħ OԪȱԨ``L :09Y} `L(奷 bɥ󥋅ȱȱȱȄ#鈄0B8eeŶ9Z}ɛ,@LBˤ,ɛ`L?± ˤ樱f Oƨ x݅ + ~ [ˠ O樥0# +  L˥`9[}LL :ɛ,$PH h $P润䧰 ʐLʦ䧐 +` ʐL3LBˢ9\}ԝD՝E֝HםI L 兢L]& 兢L% ,L6 ,L6 &L6 (L6妪@!I@!` ؐb`P KW ؐRB ؐ9]}=;G ؐ4@ ;+ƪƪ@!=A! (ƪƪ@!A! ƪ@! ,@@檦@!`!!!!!!`ƪ@! ǩjҤ9^} /L.٤ƪƪ@!@!, 舽`!`!!ـ!!٠!!!!!`@!jI*` . ֪ (9_}ϰ`(8` ֤ׅԄ +҅L: Lyƪ8吪周Ly sũ + ŐL Ly sŠԄ h L}9`} L}٩    e쪽pLyL( + ڥHJJJJ h) 0:i`  ک; n +ȱ)ȥ%9a}ݓ Lh ԍՅԄׅ֩өL:ƪ?Ԣ )ɠ )  -L &Lڦ@!)@!` n)8@9b} -L:` / n)8@I= n)8@/ѩ֔$ሄ ,L: + n 0L8 n9c} 0L8 n H1L8 n /L8 n /L8 n D/L8 n 1L8LLإL( &)ԥ)8@JjH@9d}MC)JJJe)e .F / .P . &F . #/ &L.L(HHHHHH /hhhhhh &9e} Y/hԅL:,` L _ܘ%ᨥ%Ly _ܘᨥLy _ܘEᨥELyٚ<|'g 0L`9f}!!!!i ` &LإL٥LyɥLzvmZ ƨ!0 4 䦵 ¥ԝD՝E֝Heם9g}I Lܤį eį L` x݅ƨLLLܤ ©`#ۢ Lĩ_,ߤ9q}~?B"DOS SYSB(&DUP SYSBNHDW16V LSTBjHDW16V OBJBmHDW16S LSTBHDW16S OBJBDIS16G LSTBDIS16G OBJB-AVI16G LSTBAVI16G OBJB-AVI16B LSTBAVI16B OBJBDIS16B LSTBDIS16B OBJBTURBASXLCOMBTURBASXLTXTB RGBVIEW TBSBcTEST RGBB-%MOVRGB3 M65 ڄ . eڅԥeۅհ"8څ֥ۅא8ܥݰL۠Q%0ԅإՅ٥ަ0%Q% 9r}L-ե0LޥڤLyمօנ6&֐ eו`L( Hħ hբՅ `ޥԢ `ޥՅ֠9s}&&֐eܥeېڈ 7 \ 7 j N \ N j$0!ee80å/8ܥ۰uڕ09t}eUiV`TUV`8UV`eTi`8TȢ` $L„')Q ȱ8 e9u}新`8`L齀).Q Ӱȱ8e新 O :L䅫# *$Ŭ9v} Ʃ HL"䥫ș L` Ml/#樱0ZS'`ȱȱȱȱȱȱȄ`ȱօȘuԩׅu՘e֨҄`9w}I 屝Ҡȱȱȱȱȱ` n$҅J?eԨe` L 兙 兛 n %3 Ԥ` ҩ,9x} , , L檤 ٙ!ؙ!י!֙!ՙ`!ԙ@!ә !ҙ!` 䤪ƪ!ٹ!ع!׹!ֹ`!չ@!Թ !ӹ!`ƪ!!9y}!㹁!a!A!Lp ґȥӑȥԑȥՑȥ֑ȥבȥؑȥّ` ***j)e)e`ʭȅiȅ9z}iȅȩȩ Lfإ  4  \ +] ¥򄟄9{}   넨ɛ$0L祔 Z f0#ڠ쩀 ߩ6ei$0 녖چ + !59|}ɛȑ @膔7 ɛ 襔!ɛL! _ɩ8$IȢ %e拢 9}} &!$P* &8孨客 "&$ 1L~ L~ &L _ɰe拢 &L~ +0 %30Ԅ 9~}L 9:枢0 O L :H9Hhh tLHH`h9}hLCL馩`ʆLC枢0ְşLC`A枢Ɣ!L!L9}!T 򈩛LQLD ijq ߰,iŰD VD8` 覲`8` 넬 S( +饰9}0 S0:$$ p8`$p (ȩ@҅ҥ򄬤 ߰ A L8򨢄 %Ӥ򈦬ʽ ʽ % 9}+HH 屝EҨhh$P0Ƭ 襯I `_A[`8`80 &Ոԅ9}` 넬$ +  + h갳 h) + , 褔ԙ!` "8` 襔 ɛ "ȱ"9}嫤!`! `) ɛ%)a{)_0:A[_դ`RE͕DATINPUԑCOLOҝLISԖENTEҚLEԛIƜFO9}NEXԑGOTϑGO TϑGOSU½TRAАBYŐCONԞCO͟CLOSŐCLҐDEǞDI͐ENĐNEנOPEΖLOAĖSAVŢSTATUӣNOTPOINԡXIϤOΒPOKťPRINԐRAęREA9}ĨRESTORŐRETURΩRUΐSTOАPOХGEԫPUԑGRAPHICӒPLOԒPOSITIOΐDOӒDRAWTϓSETCOLOҬLOCATŔSOUNĦLPRINԐCSAVŐCLOAĚERROR- 9}DPOKœMOVœ-MOVŪ*ƐREPEAԑUNTȊWHILŐWENĐELSŐENDIBPUBGEԒFILLTϐDϐLOOШEXIDIҖLOC˖UNLOC˖RENAMŖDELETőPAUSŖTI9}ME$PROøEXEÐENDPROÑFCOLOҪ*̕-RENU͒DEDUMЪTRACTEXԖBLOAĖBRUθGO*’PAINԟCLӔDSOUNCIRCLū%PUԘ%GEԚG9}OTGOSUTSTETHEΣ<<>ުNOOANĨ<<>STRCHRUSASVALEADATCOPEESIRNFREXLOCLOSQSGABIN9}PADDLSTICPTRISTRIDPEE˦INSTINKEYEXOHEXDEDIFRATIMETIMMOEXERNRANTRUN%%%%GOUINSTERER+,%59}&6(+8,<Xk`fghilm^deDѳHc?,Ќ,е,Y_Ҳ+7,/09}1 2!3"4Ɛ"-"."-؂ٿ֐ː9}ĐאŐbj+9,+;,ʐͭ9}ͭ@ABC\=>[<+:е<,&%rvnnxc<\9}-78s_XV+@D&0d*"'2GJh N9}Rl~&2 +饰(+VWZ ]a8`L`  ¤ħ.H h L5 䄡 9} 䅭 bɠ04Ů .ŭ%) e拰 ĩ L+Ư0 Le9}`毤Hɛ) h`  L ȱ R @ʆ ȱȄ Iğ` :62T F :9}7 8 Lbԩ- L 8 8,I ɨ 8L.UH `ƨh $ %3   + \L L 8󅯩" 9} 8" ©" Ư" L8q :Z#]abj(=) W같  L樤ħ`hh`H YhZ 9}L<>EO ƹƹ0`H f5h`I&` =? FQA` L񄳱ȱI 䦐9}Ħ ąŅ T k /䧰 k ,Ǡ ĩJH ThĥȑĥȑĦʊȑ`HHąŅ9}H h hhhh ȱIELZ L`ȱI Hȱȱȱȱȱ 9}, h @ $L+L.*ȱȱȱȱȱjEE `EjI `e`ħ ¥9}0 ` Lk 䦪`! 䧰L A@L `I&`L ©؅ L.9}0`STOPPED륺 bɠhhL :ʅ` k %3Hƹ h5h`hbjH h #9}ԤLQ #LLei  `LԑȥՑȥ֑ȥבȥؑȥّ``䈥剰9}#)iiLɠL4űI&`048ץğ=ȱȄ 9}`L  L0e拠0ȱȄL  䦪`!' >?L (<ж`!  $Л +`,LőŐ78Ƒ8 Ƒ`8` - PѠ9}`,,L L PQ 8,L ȱI ѝߠȱ`ԩ9},L E  $EL+L],,,؍ 0âLɀL ©7 F󦹩 RbL g 9}0g `Ո V fL{Ն + +􅕄L AT LINE?BLOAMEVALU>#VAR$LE?DAT>3276INPUDISTACOVERFLO?LIN?9}FOTOO LON?DE?GOSUGARBAG?CHMEͣ?LOA?NES?WHIL?REPEA?D?EXIXPRO?EXE?PRO?IS OPE?DEWR ONLCMNOT OPEΣRD ONLEOT9}RUNTIMEOUNA!FRAMCURSO!OVERRUCHKSUDONMODNOT IMPRA͠D?>#FILEDSK FULFATAL I/FILENAMPOINLOCKEDCM>DI9}?FILPOIN?APPNBAD SECTORӥHՄ +h & .hԩ + ,҅L: ƪn (@Մ$ 0` 09}` 0LoH - . /h &@Յ՘JJJJ X) 0:i`AVC2 sŠ 5  <)  <9} L L + e +e`e`&&&&&&eee` &9}&eee&*`` 兙 䦪!0 4 ۄܱ **m ݤܱEۅڦڱ= 9} ܥeƥiեLN@ ` **)]` 00`` ( ((((((((89}`W)ߥ & &e &߽řِ׼JJJJ&eXޥeYߥ䥛 9 FfЎᰈ 9} `  M 8*` 兙 󥐅i祣L{ &L9}  0 & L ȑ & L; # )ȱ L 9})ȱ) )ȱ 8ƣŐő0eސ`ƙ8ް`)ȱJJJ`9}``=`]``` E߭H Ġ} hL±&Lv`[  ȱ R] 9} L L  䅠 bɰhhğȱȄ L l"0e拱LjLx`[  ȱ R] 8h -------------------------- INFO for Turbo-Basic XL: --------------------------1) This is the original versi=}on of Turbo Basic XL, created by Frank Ostrowski. Only the title color has been changed from brown-orange to blue=}.2) TB uses RAM under the OS ROM, thus the original version will only run on XL/XE computers and DOS types that do=} not use this space also (like Sparta DOS, Bibo DOS, DOS XE and others).3) TB automatically disables Atari Basic, =}so there is really no need to hold the Option key on the XL or XE machines...4) There is a built-in Autorun-mode i=}n TB, here you have to name your Basic or TB File AUTORUN.TBS to be loaded automatically after TB. Autorun-mode i<kmn"4LHAMEBUPHPLPIMEMMEMDLTTTTTBUFBUFBUFSCRSCRSCRRGBRGBRGBRGBEADYAA}AAS BA}BhdB `BPVB`BcRBA}f !"#$%&'()*+,-.A}/d RGB.BASn6- Bx6- Bhd6- B `6- BPV6- B`6- BcR6- BfA} ASETUP SCREEN-------------,,@@ D:ATARI.RGB C@@$A@JA}@T-------------^6-F: @ ,h"F: @ ,A`r8 A`|A @HAA} @PA  @RA @V6-F: @ ,"F: @ ,A08 A`A AA}A AA  AA A6-F: @ ,"F: @ ,A8 A`A}A A(A A0A  A2&A A60 AP:-------------DSEA}TUP SCREENSN-------------X@wb@wl@wv8%@8%@8%@A}-@A%@%@%@ %A@e%A@eA}%A@e8%A8%A8%A$ D:RGB2.BAS%A@e@fUZZ@E}UPUUUZ@U@Uj@UUUE}UPPU[T@PjZAUZTUE}@UUUZPZPUVUiUPUUUUUE}jQUZjVVjZꪪUE}UTUjAPTUT@jE}UQ@[T[PE}kTP[E}ZZUꪥ@@jPDjE}kPUQPV@UZUE}jTjPVE}VUU@UPUi@E}@V@@E}@j@VUjE}ZPUV@@Z@E}PV@@@QPjP@E}PUPUUZP@@V@kE}ꪫATUU@iZꪯE}TUUUUoPTUUE}U@UP@V@UE}UTUUUPE}@UUUEUPZ@UU@@TE}UꪪPjjQ@@E}fjA@TTjUUUPE}UTjPTEAU@jUP@eE}jPUoUPZYPkZꪯf E}@eVUUUUUPjV@jAFUE}PAFkFPPUjUUUUjTUUPeUZPE}PUi@UUT@E}E}E}E}E}E}@UPE}APE}TTPEE}@UUUTE}iUi@UoTE}[PE}@PPUUUUUUPUUU@PE}o [PVToE}PVZTUV@E} @@UPoE}oUUoUUZUTPoDoE}U@TUUPVE}UVPo@[PUVTU[AUP[UoE}AW@UoQ[@UUU[UUUE}_VUUoEUUVZo[E}ZUTU[E}@E@oPE}oP@kE}TT@@E}VWE}@PUUUoUUUT/E}UUVP@@VTE}EUT@UVPT@V@E}UPUTUZjUP@nꪩPU@U@E}k@PUPj@PPiV@E}UUjV@UUUUU@*UVUVUE}UUUPUEUPUUPUTTUUUQTUE}F}F}F}F}PF}UPPVUUjUU@F}Uj@UVAF}UUUUTTEUUTUUF}jZUVVPUZF}UjUUPUZU@UUUPF }Ui~@oPZF }U@PP[UPUPU[VUF }TUUUZ@PZUUU@P[UUWVU F }PVoT_UV/PF }iUUZUjPUUUVF}@@UVP@PUUUUU[PUTUoF}PoUUoZP@/@PPoP/F}PUUUV@@PUe@UUW@@PP @PF}ZUUUUo@UUT@ PU@ @F}UUV@PTUPo@PAPPF}@TPZBZPUU@UAUoVoVTPU[F}PU[PUUEjUտTF}@UUUUUU@PUUUUo@PTUoF}@TUUUo@UUUU`UUUUZF}PTUUUPjUU@@UPF}PVPVPU@PF}UUUjT PUjPjP/@TUAQF}@@PUQU@V@@UUU@UU@UUUUPF}PUUUUTUUUPPUUUUVPUUVVUjF}UjTeUTUUUjUUUU*PTVZUUTnTUQUU@kPF}PUUUUUUUUUPfUPUU@UUUj@eUP@PUUUTAPU@%EPF}PUUU@UUUUUj@A@TUTUUUUUUUUAA@ZUUUVUUPAF}TUPUUUUVUjZUUjUUUU@F }F!}F"}F#}F$}D&dEInX;VIDEO: 128X64 2 BIT RGBxX; : 8.333 FPSX;AUDIO: 8.533 KHZX;IDE-RATING: ?? K/SX;CURRENT CODE: 5J&}8 K/S#X;AUDIO-BUFFER 1:$3C00-$4000 1KB#X;AUDIO-BUFFER 2:$5C00-$6000 1KB#X;VIDEO-BUFFER 1:$4000-$5800 6KB#X;VIDEO-BUFFJ'}ER 2:$6000-$7800 6KBX;VIDEO-DISPLAY ;$????SB1<;;SOUNDBUF-1SB2@;;END BUF-1SB3\;;SOUNDBUF-2SB4`;;ENDJ(} BUF-2VL1A{;;DISPLAY-1 NORMVL2A|;;DISPLAY-2 NORMVL1B};;DISPLAY-1 WIDEVL2B~;;DISPLAY-2 WIDE"LLN;J)};7 K,BUF;;2 BYTES IDE6 X;SBF IN CODE ! ;2 BYTES IRQ@LEN;;IDE LOAD-LENJTPY;;IRQ TEMP-YTSST;;IRQ STATJ*}US^TMP;;IDE TMPhVL1;;VIDEO-LOCATION1rVL2;;VIDEO-LOCATION2|FCNT;;FRAME COUNTER#X;J+}PORT;;EXTERN!MHD;;heads+A0MSC@;;sectors+1YY;;START CYLINDERXX;;YY=LO XX=HIFJ,}RLO;;NUM OF FRAMESFRHI;;LO/HI#X;#X; ONLY FOR CF-MEDIA !! #X;J-} INSTRES$> CFSETQ>;;SETUP IDE-1 ! PHDHEADQ>& PHDSECN0Q>YY: PHDCYLLJ.}DQ>XXN PHDCYLHX Q>FRLOb PFCNTl Q>FRHIv PFCNTQ>;;SETUP DLIPQ>PQ>P;;DIS NMI/ENJ/}A DLIQ>PQ>0P;;SETUP ANTIC=;;DISABLE IRQQ;;PAL OR NTSC?M>FPAL Q>;;NTSC-LOBYTE HNJ0}TSC PALQ>;;PAL-LOBYTE*NTSCP;;4Q>;;HIBYTE>P;;1.79MHZ/16BIT !H Q>SIRQRP;;SETUP COUNT-IRQ\Q>SIRJ1}Q;;AT 6144 HZfP;;3Sx8Fx256BytespQ>;;SETUP MISCz PBUF;;LOPSBF;;LOP0;;DISPLAY-LO Q>SB1PSBFJ2};;SET BUF-IRQQ>!P;;SMALLQ>SB1;;FILL BUFFERS PBUF HGET;;BUFFER-1 Q>SB3 PBUF HGET;;BUFFER-J3}2Q>PSST;;SET STATUS=OKQ>;;SET IRQP;;ONLY POKEY#2$P;;NOTHING ELSE!.Q>P;;POK1->POK28P;;POK1=1.7J4}9MHZB.;;START IRQLLOOP JOYS;;DO INPUT ALWAYSVQSST;;CHECKK STATUS` R>;;1=OKjFLOOP;;WAITt SGET;;EMPTY, DO LOAJ5}D~ !LOOPHDDATAPORTHDERRRPORTHDSECCPORTHDSECNPORTHDCYLLPORTHDCYLHPORTJ6}HDHEADPORTHDSTATPORTHGETQ>LLNPLENS1QSST;;DUMMY LOAD IF -GS8;;TO CATCHUPQHDSTAT;;DRIJ7}VE READY?  GS1;;NO!Q>PHDSECC;;1-SECTOR(Q>!2PHDSTAT;;READ!<%>FQ>P$>ZSB*HDSTAT;;CHECK DRQdFJ8}SBnS7QHDDATAx P@BUF73 QHDDATA P@BUF73 QHDDATA P@BUF73 QHDDATA P@BUF73 QHDDATA P@BUFJ9}73 QHDDATA P@BUF73" QHDDATA, P@BUF763@ QHDDATAJ P@BUF7T3^HS7;;256 BYTESh #BUFr0|HS7SJ:}8#HDSECN;;LOAD NEXTQHDSECN;;SECTOR/HD/CYLR>MSC;;INTO DRIVEHNXOK;;REGISTERSQ> PHDSECN $HDHEAD2 (>J;}MHD HHDOK$> #HDCYLL HHDOK #HDCYLHHDOK&HDHEAD NXOK"LEN&HS10#SST;;1 FRAME LOADED: "FCNTDHJ<}HF1N "FCNTXIHF1bX; RESTART MOVIEl Q>FRLOv PFCNT Q>FRHI PFCNTQ>;;SETUP IDE-1 ! PHDHEADQ>YYJ=} PHDCYLLQ>XX PHDCYLHQ> PHDSECNHF1:JOYSQ;;PORT-AR>HJOY1;;MOVEMENT! :JOY1R>;;RIGHTJ>}? FFFF;;FASTFORWARD*R>;;LEFT?4FRES;;RESTART>:HFFFQ>;;SET STATUS -40RPSST;;=SKIP 5 SEC\:fRES!;;JUMJ?}P STARTp"X;SOUND-IRQ BY MR.ATARI (C)2004z!X;SOUND BY POKEY #1, IRQ BY #2!X;BUFFER UNDERRUN: AUDIO STOPS"X;SIMPLE CODE TJ@}O REDUCE CYCLES!SIRQ5;;SAVE AQ>PҶQ>P;;RESET IRQQSST;;BUFFERS OK?GIRQE;;NO !SBFQ;;SET JA}ON INITP #SBF FIRQ2 7 9 IRQ2#SBF$ QSBF. R>SB28 HIRQ3B "SST;;SET EMPTYL Q>SB3;;SET SBUFJB}V PSBF` Q>`;;SET DIS2j PAN1t 7~ 9 IRQ3R>SB4 HIRQE "SST;;SET EMPTY Q>SB1;;SET SBUF PSBF Q>@;;JC}SET DIS1 PAN1 IRQE7 9 X;FILL CORRECT BUFFER. SGETQSBF;;AUDIO-HIVECTOR R>SB3;;WERE IS IT? DSGE1;;IN BUFJD}1, 2=EMPT Q>SB1;;FILL BUF1 HSGE2 SGE1Q>SB3;;FILL BUF2( SGE2PBUF2 !HGET;;GET SECTORS< X;F X;MATTHIAS CF-ROJE}UTINESP CFRES$>Z CFSETd Qn R>x HNORES !;;IDE-F RESET NORES: X; install reset handler INSTRES4 JF}Q>4CFRES P Q>5CFRES P Q L> P : CFSETQ>;;SETUP IDE-1 ! PHDHEAD Q> PHDSECN" CFW1*HDJG}STAT, GCFW16 JCFW1@ &HDERRRJ Q>T PHDSTAT^ CFW2*HDSTATh GCFW2;; wait busy clrr JCFW2;; wait drive rdy| : JH}X;DLI  5 QSC1 R> HUP1 Q> PSC1 HCON UP1Q> PSC1 CONQAN1 R>@ FGR1 R>P FBL1& JI}R>`0 FGR2: R>hD FRD2N R>HX FRD1b X;NO MATCH SO BL2l BL2Q>`v PAN1 Q> PД Q> PШ Q> PмJJ} 7 9 GR2Q>h PAN1 Q> P Q> P Q> P 7* 94 RD2Q>p> PAN1H Q>4R P\ Q>8f Pp JK}Q>@ PAN1 Q> P Q> P Q> P 7 9 GR1Q>HPAN1Q>P$JL}Q>.P8Q>BPL7V9` RD1Q>PjPAN1tQ>4~PЈQ>8PМQ><Pа790SC1 =p=pJM}=p N= AN1 @= ===== ======= =======  =======JN} ======= =======( =======2 =======< ===JO}====F =======P =======Z =======d =======n JP}=======x ======= ======= A SC1X; X;START MOVIEJQ} FROM DOS====x ======= ======= A SC1X; X;START MOVIEH