From 7fb870937fce28bfa58db3985646ea59e4c75241 Mon Sep 17 00:00:00 2001 From: "Jorge Chamorro Bieling / @jorgechamorro" Date: Fri, 6 Oct 2017 14:23:03 +0200 Subject: [PATCH] skookum as frig! --- demo_site/6502.png | Bin 0 -> 87550 bytes demo_site/demo.js | 434 ++++++++++++++++++++++++ demo_site/f666.png | Bin 0 -> 1644 bytes demo_site/homer 1.png | Bin 0 -> 2866 bytes demo_site/homer 2.png | Bin 0 -> 4572 bytes demo_site/homer 3.png | Bin 0 -> 3069 bytes demo_site/homer 4.png | Bin 0 -> 3021 bytes demo_site/homer 5.png | Bin 0 -> 3149 bytes demo_site/homer 6.png | Bin 0 -> 6164 bytes demo_site/homer 7.png | Bin 0 -> 2966 bytes demo_site/homer 8.png | Bin 0 -> 2838 bytes demo_site/index.html | 20 ++ demo_site/style.css | 49 +++ src/receive_hgr_demo_site.s | 655 ++++++++++++++++++++++++++++++++++++ 14 files changed, 1158 insertions(+) create mode 100644 demo_site/6502.png create mode 100644 demo_site/demo.js create mode 100644 demo_site/f666.png create mode 100644 demo_site/homer 1.png create mode 100644 demo_site/homer 2.png create mode 100644 demo_site/homer 3.png create mode 100644 demo_site/homer 4.png create mode 100644 demo_site/homer 5.png create mode 100644 demo_site/homer 6.png create mode 100644 demo_site/homer 7.png create mode 100644 demo_site/homer 8.png create mode 100644 demo_site/index.html create mode 100644 demo_site/style.css create mode 100644 src/receive_hgr_demo_site.s diff --git a/demo_site/6502.png b/demo_site/6502.png new file mode 100644 index 0000000000000000000000000000000000000000..ffcc4154aa02cca42a7518e490b7a90e9ff8678e GIT binary patch literal 87550 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�Ir0A!c`x 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 literal 0 HcmV?d00001 diff --git a/demo_site/demo.js b/demo_site/demo.js new file mode 100644 index 0000000..e65c24c --- /dev/null +++ b/demo_site/demo.js @@ -0,0 +1,434 @@ + +//2017-09-17 Jorge Chamorro Bieling, jorge@jorgechamorro.com + +window.onload= function boot () { + + + Array.prototype.shuffle= function shuffle (a,b,i) { + a= []; + b= this; + while (b.length) { + i= rnd(b.length); + a[a.length]= b[i]; + b.splice(i,1); + } + return a; + }; + + + function $ (id) { return document.getElementById(id) } + + + function rnd (i) { + return Math.floor(i* Math.random()); + } + + + [ 'homer 1.png', + 'homer 2.png', + 'homer 3.png', + 'homer 4.png', + 'homer 5.png', + 'homer 6.png', + 'homer 7.png', + 'homer 8.png', + 'f666.png', + '6502.png', + '6502.png', + '6502.png'].shuffle().forEach(setup); + + + function setup (src) { + + var div= document.createElement('div'); + div.className= 'crop'; + var canvas= div.appendChild(document.createElement('canvas')); + canvas.width= 280; + canvas.height= 192; + var img= document.createElement('img'); + img.onload= function onload (h,v) { + img.onload= h= v= 0; + if ((img.width>280) && (img.height>192)) { + h= rnd(img.width-280); + v= rnd(img.height-192); + } + canvas.getContext('2d').drawImage(img, -h, -v); + div._hex= foto2hex(canvas); + div.onclick= function onclick () { + var samples= silence(48000/10)+ idle_turbo(); + for (var i=0 ; i<8192 ; i+=256) { + var hex= div._hex.substr(2*i, 2*256); + samples+= sync_turbo(); + samples+= hex_to_samples_turbo(hex); + samples+= idle_turbo(); + } + samples+= silence(48000/10); + play(samples); + } + }; + img.src= src; + div._img= img; + div._canvas= canvas; + document.body.appendChild(div); + + function foto2hex (canvas) { + var data= canvas.getContext('2d').getImageData(0,0,280,192); + var bytes= []; + for (var y=0 ; y<192 ; y+=1) { + for (var x=0 ; x<280 ; x+=7) { + var byte= 0; + for (var i=6 ; i>=0 ; i-=1) { + var pixel= data.data[4*((y*280)+(x+i))]; + byte= (2*byte)+ (pixel ? 1 : 0); + } + byte= byte.toString(16); + while (byte.length<2) byte= '0'+ byte; + bytes[get_hgr_offset(x,y)]= byte; + } + } + var hex= ''; + for (var i=0 ; i<8192 ; i++) hex+= bytes[i] ? bytes[i] : '00'; + return hex; + } + + var hgr_offsets= [0, 1024, 2048, 3072, 4096, 5120, 6144, 7168, 128, 1152, + 2176, 3200, 4224, 5248, 6272, 7296, 256, 1280, 2304, 3328, 4352, + 5376, 6400, 7424, 384, 1408, 2432, 3456, 4480, 5504, 6528, 7552, + 512, 1536, 2560, 3584, 4608, 5632, 6656, 7680, 640, 1664, 2688, + 3712, 4736, 5760, 6784, 7808, 768, 1792, 2816, 3840, 4864, 5888, + 6912, 7936, 896, 1920, 2944, 3968, 4992, 6016, 7040, 8064, 40, 1064, + 2088, 3112, 4136, 5160, 6184, 7208, 168, 1192, 2216, 3240, 4264, + 5288, 6312, 7336, 296, 1320, 2344, 3368, 4392, 5416, 6440, 7464, + 424, 1448, 2472, 3496, 4520, 5544, 6568, 7592, 552, 1576, 2600, + 3624, 4648, 5672, 6696, 7720, 680, 1704, 2728, 3752, 4776, 5800, + 6824, 7848, 808, 1832, 2856, 3880, 4904, 5928, 6952, 7976, 936, + 1960, 2984, 4008, 5032, 6056, 7080, 8104, 80, 1104, 2128, 3152, + 4176, 5200, 6224, 7248, 208, 1232, 2256, 3280, 4304, 5328, 6352, + 7376, 336, 1360, 2384, 3408, 4432, 5456, 6480, 7504, 464, 1488, + 2512, 3536, 4560, 5584, 6608, 7632, 592, 1616, 2640, 3664, 4688, + 5712, 6736, 7760, 720, 1744, 2768, 3792, 4816, 5840, 6864, 7888, + 848, 1872, 2896, 3920, 4944, 5968, 6992, 8016, 976, 2000, 3024, + 4048, 5072, 6096, 7120, 8144]; + + function get_hgr_offset (x,y) { + return hgr_offsets[y]+ Math.floor(x/7); + } + + } + + + + + +// Audio cosas comunes + +var playing= []; +var audio_context = new (window.AudioContext || window.webkitAudioContext)(); +var sample_rate= audio_context.sampleRate; +var invert= 0; + +function mute () { + while (playing.length) { + var f= playing.pop(); + try { f() } catch (e) { ; } + } +} + + +function silence (how_much) { + var str= ''; + while (how_much--) str+= '0'; + return str; +} + + +function play (samples) { + + mute(); + + var channels= 1; + var audio_buffer = audio_context.createBuffer(channels, samples.length, sample_rate); + var channel_data= audio_buffer.getChannelData(0); + var symbol2level= {H:1, h:0.5, 0:0, L:-1, l:-0.5}; + for (var i=0 ; i= 0) playing.splice(where, 1); + console.log("END PLAY"); + }; + +} + + + + + + + +// **** Audio turbo + +function idle_turbo () { + return 'LLLLLLLLLLLLHHHHHHHHHHH'; +} + +function sync_turbo () { + return 'HHLLLLLLLLHHHHHHHLL'; +}; + +function hex_to_samples_turbo (hex) { + + hex= hex.toLowerCase(); + var hex2value= { 0:0, 1:1, 2:2, 3:3, 4:4, 5:5, 6:6, 7:7, + 8:8, 9:9, a:10, b:11, c:12, d:13, e:14, f:15 }; + + var bin= ''; + for (var i=0 ; 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%0A9K%COo*m z{QwW#kA1_xy(L}lrvkvhlN!~MUyv};do=%ASYS!(flLAOcAbU_}Oa@l_ zf9xpUWHqc_Sd4fo53nF37l1UYJ+O#&x2e++<1Z-4EeuRs;YYl2mrit6_qBQffC5BU z1IuEV%i0yS*cLT!GI?QVRv$TuG1{pB(4F>x-ASv-6FmJzZqdN@MDoTH`y=c01@&^f zAArRk?3~A_)=G8M<$YacuiD8wk7(F3XR~G}-#Gx5vx|s)blpl{+k=n6;+Ra-Z6&HF z3X}&axC9X2AaY)z>g7cBRzJB{x~vpz*NF}~cNu}l&dwtMi2>gYT0x%@Rip-6gKZWf z{Q?nPK1<&b5evYA^r2U8#~3j_0Z%`1_g7u(O$fMHCt*AP2M ztm0shsM$_LtBI&1;Ol6rB`0(7NaLhC^PHyvcm@Z2NQ&g&D$$!X=GypnkARhaaV8s+ z@c5uq^yd%yhX4lW0VsOajYCC@-z&%v7tJGflKHG;(6?O_>}MzP6A^XQYO8~Kkon30 zBD+SrnUxH3{i;nLK8~nEcM=&I4JoI2L>{0f(0YRcdnsVhq33dqTpSTwDc_64sIb$ zvt=wmM9;wzB%eEQ^;bmg#J!<^Nfi|MI}s7P>)gtdOt&xFE)cKx8%?4D@R06bE!__Y zXYK`nsr@Eqcm~ZDZ$rG3_7QdXh&qV7cs7+K5>*fpk=0K=M)qaf5ffNO&XrdW5?y9l z9n5|`m6(-?h)w9&y<&G~ko@SU>3UG#@w}6CHnM%G-JeLz?j&M#-zP+5*R%#C5({Yd z3-v??jgkI2^z&DU*~v*n6_{dLxGY7u8KQLt!WD279pF84P%k zO8TN!c4@Uv71#bsF}f6^w-XT&t*!6Wv>U|yg5*86#${wE5-8m_`#q^WJ)t8+Sc8rz z#O)D3ft4tr(aCxuRhUW|%Xpp+oBPxkuqLtx_3g-R4LF0fUsVuA?N20X=Q`*$Q|9*- zTASu{k_UEYGwHtic|>$*8wI?RyXdyiKHJJEaFyu|{5fR=TO%G)033eIFZ{ZZDAlw_ zYkLL%ytVxmiBI?8{Dfw+VOaQaHHGDf<~Z%$apc48IKTANT%LOMD`jIK}5v%ke$fzr_!F-9+@NK zf=$|0769*b1-vh1tCb8v?l~wWhS@JOAZl9o`k{^O7XaPoBwu^eZlW%KDz(Ru9^U6b z={$WA?PCgjL9Lwrs#%HJyAr9cANj~IWiHu?f&toue-8j*@PqYTO|)SE0000C$ literal 0 HcmV?d00001 diff --git a/demo_site/homer 3.png b/demo_site/homer 3.png new file mode 100644 index 0000000000000000000000000000000000000000..088bc954114a1b96c91efe23ccad43aaf7b1d31f GIT binary patch literal 3069 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 LNkvXXu0mjfaDKsn literal 0 HcmV?d00001 diff --git a/demo_site/homer 4.png b/demo_site/homer 4.png new file mode 100644 index 0000000000000000000000000000000000000000..8cfbe01d86f5631b6fa8c62cf8798113649a899b GIT binary patch literal 3021 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 P00000NkvXXu0mjf$U4DY literal 0 HcmV?d00001 diff --git a/demo_site/homer 5.png b/demo_site/homer 5.png new file mode 100644 index 0000000000000000000000000000000000000000..213c84e68cb04130a0f8b489c668834a3d6f83c5 GIT binary patch literal 3149 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 literal 0 HcmV?d00001 diff --git a/demo_site/homer 6.png b/demo_site/homer 6.png new file mode 100644 index 0000000000000000000000000000000000000000..a5cb5295f3559a8dafaddf43d22aef9951a2d7d9 GIT binary patch literal 6164 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%0Adm6BMJhu#TtCVD;~7f}$zT{Q?|MTh|{ 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 literal 0 HcmV?d00001 diff --git a/demo_site/index.html b/demo_site/index.html new file mode 100644 index 0000000..7d5a6e9 --- /dev/null +++ b/demo_site/index.html @@ -0,0 +1,20 @@ + + + + + TURBO-CASSETTE DEMO + + + + +

TURBO-CASSETTE Demo

Sample rate is ¿?

+ + + + + + + + +
+ \ No newline at end of file diff --git a/demo_site/style.css b/demo_site/style.css new file mode 100644 index 0000000..39c2032 --- /dev/null +++ b/demo_site/style.css @@ -0,0 +1,49 @@ +body { + background-color: #002543; + color: #ffffff; + margin: 0; + zoom: 1.1; +} + +.crop { + margin: 0; + margin-left: 10px; + margin-bottom: 10px; + width: 280px; + height: 192px; + overflow: hidden; + border: 2px solid white; + float: left; +} + +img { + margin: 0; + padding: 0; +} + +input { + margin: 10px; + padding: 5px; + font-size: 0.8em; +} + +h1 { + font-family: arial,helvetica,sans-serif; + font-size: 32px; + color: white; + font-weight: normal; + letter-spacing: 2px; + margin: 3px; +} + +h3 { + font-family: arial,helvetica,sans-serif; + font-size: 14px; + color: white; + font-weight: normal; + letter-spacing: 2px; + margin: 3px; +} +.crop:hover { + border: 2px solid #fdc632; +} diff --git a/src/receive_hgr_demo_site.s b/src/receive_hgr_demo_site.s new file mode 100644 index 0000000..7fc29fe --- /dev/null +++ b/src/receive_hgr_demo_site.s @@ -0,0 +1,655 @@ + +; Apple II TURBO CASSETTE LOADER +; 13569 bps @44100 sps +; 14769 bps @48000 sps +; Jorge Chamorro Bieling, SEPT 2017 +; jorge@jorgechamorro.com + +; See the thread "Gentlemen, 14+ kbps" @ comp.sys.apple2 : +; https://groups.google.com/forum/#!topic/comp.sys.apple2/V_S7-0pv3CA/discussion +; Source files: github.com/xk/Turbo-Cassette-for-the-Apple-II +; Compile with: apple2.duckdns.org/assembler/ +; Connect the PC to the Apple II cassette in port, set the volume at 50% or more. +; Transfer directly from the assembler page to the Apple II and then 820G +; Go to the demo page at: apple2.duckdns.org/turbodemo/ +; Click on an image to xfer it +; On the Apple II the space bar resets the decoder an clears the HGR screen, ESC quits. +; Report issues on c.s.a2 or @ the github repo. + +* = $820 + +buffer = $2000 +spkr = $c030 +cout = $fded +hgr = $f3e2 +bell = $ff3a + +bits = 8 +sync_min = 9 +sync_max = 9 + +reset jsr bell + sta $c010 + jsr skookum + +entry jsr go + lda $c000 + bmi key + bcs reset + jmp entry + +key sta $c010 + and #$7f + cmp #27 ;ESC is quit + bne reset ;any other key is reset + sta $c053 + sta $c051 + rts + +go lda #>buffer + sta buffer_hi_1 + sta buffer_hi_2 + jmp sync + +last_sample +.byte 0 + +decode ldx #0 ;x= buffer index + ldy #bits ;y= bit number + sec ;C means last edge was a clock + +sample_lo lda $c060 ;4 + bmi short_lo ;2..3 +sl_1 lda $c060 ;4 + bmi short_lo ;2..3 +sl_2 lda $c060 ;4 + bmi short_lo ;2..3 +sl_3 lda $c060 ;4 + bmi short_lo ;2..3 +sl_4 lda $c060 ;4 + bmi short_lo ;2..3 +sl_5 lda $c060 ;4 + bmi short_lo ;2..3 +sl_6 lda $c060 ;4 + bmi short_lo ;2..3 +w_hi_clk lda $c060 ;4 + bmi clk_rising ;2..3 +hi_clk_1 lda $c060 ;4 + bmi clk_rising ;2..3 +hi_clk_2 lda $c060 ;4 + bmi clk_rising ;2..3 +hi_clk_3 lda $c060 ;4 + bmi clk_rising ;2..3 +hi_clk_4 lda $c060 ;4 + bmi clk_rising ;2..3 +hi_clk_5 lda $c060 ;4 + bmi clk_rising ;2..3 +hi_clk_6 lda $c060 ;4 + bmi clk_rising ;2..3 +hi_clk_7 lda $c060 ;4 + bmi clk_rising ;2..3 +hi_clk_8 lda $c060 ;4 + bmi clk_rising ;2..3 +hi_clk_9 lda $c060 ;4 + bmi clk_rising ;2..3 +hi_clk_10 lda $c060 ;4 + bmi clk_rising ;2..3 +hi_clk_11 lda $c060 ;4 + bmi clk_rising ;2..3 + jmp eof_frame + + +short_lo bcc clk_rising + clc + jmp sh_1 +clk_rising clc ;2 rising edge es un 0 +.byte $3e ;7 rol buffer,x ;7 +.byte buffer + sec + dey + bne sh_2 + inx + beq eof_frame + ldy #bits + jmp sh_3 + + +short_hi bcc clk_falling ;2..3 + clc ;2 + jmp sl_1 ;3 +clk_falling sec ;2 falling edge es un 1 +.byte $3e ;7 rol buffer,x ;7 +.byte buffer + sec + dey ;2 + bne sl_2 ;2..3 + inx + beq eof_frame + ldy #bits + jmp sl_3 ;4 + + +sample_hi lda $c060 ;4 + bpl short_hi ;2..3 +sh_1 lda $c060 ;4 + bpl short_hi ;2..3 +sh_2 lda $c060 ;4 + bpl short_hi ;2..3 +sh_3 lda $c060 ;4 + bpl short_hi ;2..3 +sh_4 lda $c060 ;4 + bpl short_hi ;2..3 +sh_5 lda $c060 ;4 + bpl short_hi ;2..3 +sh_6 lda $c060 ;4 + bpl short_hi ;2..3 +w_lo_clk lda $c060 ;4 + bpl clk_falling ;2..3 +lo_clk_1 lda $c060 ;4 + bpl clk_falling ;2..3 +lo_clk_2 lda $c060 ;4 + bpl clk_falling ;2..3 +lo_clk_3 lda $c060 ;4 + bpl clk_falling ;2..3 +lo_clk_4 lda $c060 ;4 + bpl clk_falling ;2..3 +lo_clk_5 lda $c060 ;4 + bpl clk_falling ;2..3 +lo_clk_6 lda $c060 ;4 + bpl clk_falling ;2..3 +lo_clk_7 lda $c060 ;4 + bpl clk_falling ;2..3 +lo_clk_8 lda $c060 ;4 + bpl clk_falling ;2..3 +lo_clk_9 lda $c060 ;4 + bpl clk_falling ;2..3 +lo_clk_10 lda $c060 ;4 + bpl clk_falling ;2..3 +lo_clk_11 lda $c060 ;4 + bpl clk_falling ;2..3 + jmp eof_frame + + +eof_frame cpy #0 + bne quit_err + cpx #0 + bne quit_err +ok ldx buffer_hi_1 + inx + cpx #$40 + beq quit_ok + stx buffer_hi_1 ;self-modifying code FTW + stx buffer_hi_2 + jmp sync + +quit_err sec + rts + +quit_ok clc + rts + + +;ALGORITMO DE SYNC: +;1.- buscar un falling edge +;2.- contar bucles hasta el próximo flanco +;3.- si son más de sync_max o menos de sync_min goto 1 +;4.- si son entre sync_min y sync_max => ok, y si ocurren 2 seguidos => ok: Al final del segundo empiezan los datos. +;5.- si el último pulso da error probablemente la señal esté invertida. +;6.- los samples de los pulsos de sync serían LLLLLLLLHHHHHHHLL (8L7H2L) + + +sync lda spkr + ldx #sync_min + + lda $c060 + sta last_sample +wait_edge lda $c000 + bmi quit_err +no_key lda $c060 + eor last_sample + bpl wait_edge + lda last_sample + bpl sync ;buscamos falling edge + +sync_1_1 dex + bmi sync_2 ;min length ok + lda $c060 + bpl sync_1_1 + bmi sync ;too short + +sync_2 ldx #sync_max +sync_2_1 dex + bmi sync ;too long + lda $c060 + bpl sync_2_1 + bmi sync_3 + +;1st pulse (LO) ok + +sync_3 ldx #sync_min +sync_3_1 dex + bmi sync_4 ;min length ok + lda $c060 + bmi sync_3_1 + bpl sync ;too short + +sync_4 ldx #sync_max +sync_4_1 dex + bmi sync ;too long + lda $c060 + bmi sync_4_1 + jmp decode ;2nd pulse (HI) ok + +skookum jsr hgr + sta $c052 + lda #1 + sta $3a9a + sta $263a + sta $2dba + sta $24c1 + sta $3719 + sta $20c1 + sta $2442 + sta $3737 + sta $3d3d + sta $223a + sta $339b + sta $3f9b + sta $28bb + sta $3b9b + sta $3b37 + sta $3a36 + sta $29ba + sta $3e9a + sta $3042 + sta $3e36 + sta $379b + sta $2cbb + lda #2 + sta $20bd + sta $33b7 + lda #3 + sta $23b7 + sta $3ab7 + sta $303f + sta $3a38 + sta $2842 + sta $203f + sta $271a + sta $3e38 + sta $22bb + sta $36b7 + sta $285e + sta $30bb + sta $29bc + sta $24bd + sta $2c42 + sta $2c3f + sta $283f + sta $2b1a + sta $3638 + sta $2a3a + sta $3b35 + sta $3335 + sta $26b6 + sta $22b8 + sta $26b8 + sta $2dbc + sta $34bb + sta $2e3a + sta $31bc + sta $243f + sta $3398 + sta $2f35 + sta $3f37 + sta $22b6 + sta $3735 + sta $231a + lda #4 + sta $3b38 + lda #6 + sta $2d3c + sta $293f + sta $3b97 + sta $2798 + sta $3f97 + sta $293c + lda #7 + sta $28bd + sta $2f1a + sta $2f98 + sta $2ab6 + sta $2eb7 + sta $213f + sta $2b39 + sta $2fb7 + sta $3238 + sta $21bd + sta $2e38 + sta $2ab7 + sta $38bb + sta $2ab8 + sta $3f19 + sta $2eb6 + sta $2b98 + sta $2f38 + sta $2bb7 + sta $3b98 + sta $39bc + sta $3798 + sta $2cbd + sta $32b7 + sta $2b35 + sta $245e + sta $343f + sta $27b7 + sta $2eb8 + sta $35bc + sta $331a + sta $3cbb + sta $323a + sta $3e3b + sta $3b19 + lda #8 + sta $2cbc + lda #12 + sta $34bc + sta $3f1a + sta $30bc + lda #14 + sta $3c3f + sta $2a38 + sta $3cbc + sta $3ab6 + sta $38bc + sta $223c + sta $36b8 + sta $253c + sta $213c + sta $2799 + sta $3b1a + sta $313c + sta $34bd + sta $2040 + sta $263c + sta $36b6 + sta $371a + sta $30bd + sta $253b + lda #15 + sta $2739 + sta $3dbc + sta $3d3e + sta $3a3b + sta $3eb7 + sta $32b8 + sta $205e + sta $383f + sta $253f + sta $3f98 + sta $3338 + sta $213b + sta $2399 + sta $32b6 + sta $363a + lda #24 + sta $37b6 + sta $2299 + sta $239a + sta $279a + lda #28 + sta $263b + sta $2a3b + sta $28bf + sta $383e + sta $39bb + sta $343e + sta $2d3b + sta $3dbb + sta $2f99 + sta $2fb6 + sta $2336 + sta $3eb6 + sta $24bf + sta $3cbd + sta $2dbd + sta $323b + sta $35bb + sta $2e3b + sta $3bb6 + sta $2699 + sta $223b + sta $2840 + lda #30 + sta $293b + sta $38bd + sta $2bb6 + sta $2b99 + sta $2398 + sta $3fb6 + sta $2440 + sta $20bf + sta $3738 + sta $3ab8 + sta $353c + sta $363b + lda #31 + sta $2339 + sta $393e + sta $3a3a + sta $25bd + sta $2337 + lda #48 + sta $3eb5 + lda #56 + sta $3639 + sta $353b + sta $20be + sta $3799 + sta $3c3e + sta $2e99 + sta $3040 + sta $33b6 + sta $253d + sta $3ab9 + sta $393b + sta $3a39 + lda #57 + sta $30bf + sta $2cbf + lda #60 + sta $213d + sta $3399 + sta $2c40 + sta $313b + sta $3eb8 + sta $3eb9 + sta $2a99 + lda #62 + sta $29bd + sta $2335 + lda #63 + sta $2735 + sta $313e + sta $353e + lda #64 + sta $3cbe + sta $21b9 + sta $3334 + sta $2f34 + sta $3734 + sta $3041 + sta $2c41 + sta $3f34 + sta $38be + sta $213e + sta $28bc + sta $38ba + sta $34ba + sta $28ba + sta $2b19 + sta $26b5 + sta $3b34 + sta $25b9 + sta $2ab5 + sta $253e + sta $3637 + sta $24bc + lda #65 + sta $3337 + sta $2042 + lda #67 + sta $25bc + sta $25ba + lda #68 + sta $3a37 + lda #70 + sta $22b7 + sta $3e37 + lda #71 + sta $26b7 + lda #78 + sta $31bb + sta $2c3e + lda #79 + sta $2dbb + sta $23b6 + lda #92 + sta $3239 + lda #94 + sta $303e + sta $2e39 + lda #95 + sta $27b6 + lda #96 + sta $2cbe + sta $31b9 + sta $3235 + sta $29b9 + sta $3e35 + sta $2b97 + sta $2719 + sta $2841 + sta $2f9a + sta $30be + sta $293e + sta $39b9 + sta $3b36 + sta $393d + sta $20c0 + sta $24c0 + sta $2cba + sta $28c0 + sta $2441 + sta $2319 + sta $30ba + sta $243e + sta $35b9 + sta $2db9 + sta $285d + sta $3f9a + sta $353d + sta $22b5 + sta $205d + sta $34be + lda #97 + sta $2f37 + sta $2b38 + sta $3db9 + lda #99 + sta $21bc + lda #103 + sta $29bb + sta $2239 + sta $3f36 + sta $25bb + lda #108 + sta $283e + lda #111 + sta $2a39 + sta $2639 + lda #112 + sta $2738 + sta $203e + sta $36b9 + sta $2ab9 + sta $3db8 + sta $3718 + sta $28be + sta $3f99 + sta $24be + sta $2d3d + sta $3a99 + sta $26b9 + sta $3635 + sta $3a35 + sta $2041 + sta $3e99 + sta $3e39 + sta $3336 + sta $26ba + sta $3840 + sta $339a + sta $3c40 + sta $245d + sta $22b9 + sta $2d3e + sta $379a + sta $32b9 + sta $2eb9 + sta $3b9a + sta $3699 + sta $313d + sta $3736 + lda #113 + sta $3d3b + lda #115 + sta $38bf + sta $21bb + lda #119 + sta $3cbf + lda #120 + sta $2238 + sta $3b18 + sta $2f36 + sta $2338 + sta $2b36 + sta $293d + sta $3b99 + sta $3440 + sta $3299 + sta $2f97 + sta $2736 + lda #121 + sta $2b37 + lda #123 + sta $3d3c + sta $34bf + lda #124 + sta $22ba + sta $3f18 + sta $393a + sta $3397 + lda #126 + sta $393c + sta $2638 + sta $3d3a + sta $3e3a + sta $3797 + lda #127 + sta $2737 + sta $3f35 + sta $21ba + sta $23b5 + sta $27b5 + rts + +.byte 0 +.byte 0 +.byte 0 + +.end