p(p INCLUDE "keypad.asm" SECTION"Main C>F>(= ̀>Date 981017 "   *   *    A "    A *  ff s nٙgcnܙ3>IR DEMO #13> /7G>/GȨx>0G"\?\"\"\"\"\"\"͎?\"\"\""\?\"\"\"\"\"\"͎?\"\"͎""\?\"\"\"\"\"\"\"͎"\?͎""\?\"\"\"\"\"\"\"͎"\?\""\?\"\"\"\"\"͎?\"\"\"\""\?\"\"\"\"\"͎?\"\"\"͎""\?\"\"\"\"\"\"\"\"\"\"\""\?\"\"\"\"\"\"\"\"\"\"͎""\?\"\"\"\"\"\"\"\"\"͎?"\?\"\"\"\"\"\"\"\"\"͎"\""\?\"\"\"\"\"\"\"\"͎?\""\?\"\"\"\"\"\"\"\"͎?͎""\?\"\"\"\"\"\"\"\"͎"\?"\?\"\"\"\"\"\"\"\"͎"\"\""\?\"\"\"\"\"\"\"͎?\"\""\?\"\"\"\"\"\"\"͎?\"͎">V>V :>V>V " E 1 -ͱ-͐-P+w(ͪ+("o(g(͊W(_(b+_ t ͓p4 ͓p4>͡> _ t 3 bk 3 bk  8͡_  "86| }0J!`ͿͿ!Ϳ͔, bk( }|0og&h,bk,bku͋S͋  T (basic timing) = Encoding format = RC5/Biphase Encode Pulse Length Encode RECS80/Space Encode!0OA y"   A p#| }0bk!Ϳ!Ϳ!ͿP( IR data error. Please press A or B to retry. Header = No Header = Yesz/W{/_|(|/g}/o#| }_ ͊ȷ! (!  Ϳ !A 6 # x ! `Ϳ! Ϳ! ͿPoint remote at end of GBC and press any button on it. ++++++! Ϳ!  Ϳ! @Ϳ! `ͿP( Press A or B. >!Vȷ( <(  """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""!*(+T]P( * bk6!*(+* x18*!583!:8,!<8%!=8!"U8!+Z8!!͘͢+!ͿŘ ͿCarrier Freq =Unknown 32kHz 36kHz 37.916kHz39.2kHz 40kHz 56.875kHz dIxGI!*((~ (~O#z !<( x( * >>>!V """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""7ͭ+ͭ+0:8'GA p#' x G!,x+ ^#V# (A xF%'.E,E,E,E,E,A >033 8;;BѰ>0A L}`h0)0)0)0)0)0)0)0`hGyL0)0)0)0)0)0)0)0OzWxgyGL!q#p#6!{_zW5yOxG++yO#xG0+yO#xG?ȷ(͕-!Y ͋!!>>>>CB>GHI/! 0/! 0/!K0͙!> >@@ˇD @˿@! .e ͋-! .Ř͋!#.͋!.)͋!. ͋!&. ͋!0.@ͿRemote ControlVol+Vol-Ch+Ch-Mute Power ͻ xxxxxxxxxxxx Remote Control xxxxxxxxxxxx ͼ xxxxxxxxxxxx xxxxxxxxxxxx xxxxxxxxxxxx ͻ ͻ xxxxxxxxxxxx ɼ Ȼ ͻ xxxxxxxxxxxx ͼ xxxxxxxxxxxx Ȼ ɼ ͼ xxxxxxxxxxxx ͼ xxxxxxxxxxxx ͻͻ xxxxxxxxxxxx xxxxxxxxxxxx ͼͼ xxxxxxxxxxxx!>O@z"""""""""""""""" O>hi@* >jk@* ^=zuLg F{!e2mR)(E*B_.~BBBBBB~~~~~l|88||88|8|8|8||8|<<><~~<ffffff{>c8ll8x~~~<~~<<~~< 0``0$ff$<~~<000000llllllll0|x 00f8l8vv``0```0`00`f<x00000x xflxlf``````~8ll8ff|``xxff|lfxxx000000x0l88lx00x 0`x`````x`0 xx8l00x |v``|ffxx |vxx8l```v| `lvff0p000x x`flxlp00000xxxff|`v| vf`|x 0|004vx0ll8l| 0d00000000v8lP(xx(xx xx(v v(| (||(|xx8D@@@f<~~ff|``00000x |v p000x xx v2L2L8 DD8DDDz@||||||l(| 8DD8llL|<@0@< Iբ֢(Xآ( rc.asm call IROff1 call IROn1 call IROff1 call IROn1 call IROff1 call IROn1 calBf2 ֢֢( rc.asmROff1 call IROn1 call IROff1 call IROn1 ei ret Digit8: di call IROn1 Hl xעע( IROrc.asmall IROff1 call IROn1 call IROff1 call IROn1 call IROff1 call IROn1 call L 8آHآ(crc.asm1 call IROn1 call IROff1 call IROn1 call IROff1 call IROn1 call IROff2 Sl ٢٢)\٢)all rc.asm call IROff1 call IROn1 ei ret Digit9: di call IROn1 call IROff1 ca[n2 ٢٢*^ڢ*ROn1rc.asml IROff1 call IROn1 call IROff1 call IROn1 call IROff1 call IROn1 call c ڢڢ+@(ܢ+ rc.asmIROn1 call IROff1 call IROn1 call IROff2 call IROn2 call IROff1 call IROnh cahۢxۢ+l rc.asm ei ret IROn1: ld b,LENON .loop: ld a,1 ld [$ff56],a nop ld a,0 k 8ܢHܢ,hܢ, rc.asm dec b jr nz,.loop ret IROn2: ld b,LENON*2 .loop: ld a,1 ld [$ff56],n nݢݢ-Xݢ-[$ffrc.asm rept 14 nop endr dec b jr nz,.loop ret IROff1: ld b,LENOFF-1 .loop: 25 ݢݢ.ޢ. b rc.asm nz,.loop rept 19 nop endr ret IROff2: ld b,LENOFF*2-1 .loop: rept 25 nopendޢޢ/hߢ/.loorc.asmept 19 nop endr ret info ; -- rNR34 EQU $FF1E rAUD3HIGH EQU rNR34 ; -- ; -- AUD4LEN/NR41 ($FF20) ; --ngtxߢߢ0ࢂ0th drc.asm ; -- rNR41 EQU $FF20 rAUD4LEN EQU rNR41 ; -- ; -- AUD4ENV/NR42 ($FF21) ; -- Envelope (R/W) ; -- ; - rc.asm call IROff1 call IROn2 call IROff1 call IROn1 ei ret ChannelUp: di can1 prâROn2rc.asml IROff1 call IROn1 call IROff1 call IROn1 call IROff1 call IROn1 call   calrc.asm call IROn1 call IROff2 call IROn2 call IROff1 call IROn1 call IROff1  X¢h¢Off1rc.asml IROn1 call IROff1 call IROn1 ei ret ChannelDown: di call IROn1 call  â(â crc.asm1 call IROn1 call IROff1 call IROn1 call IROff1 call IROn1 call IROff1  ââsĢll rc.asm call IROff2 call IROn2 call IROff1 call IROn1 call IROff1 call IROn1 ROfĢĢtxŢ IROrc.asmcall IROn1 ei ret Digit0: di call IROn1 call IROff1 call IROn2 call  ŢŢuǢ rc.asmIROn1 call IROff1 call IROn1 call IROff1 call IROn1 call IROff1 call IROn1calHƢXƢ rc.asm call IROff1 call IROn1 call IROff1 call IROn1 call IROff1 call IROn1 calf1 ǢǢ rc.asmOff1 call IROn1 ei ret Digit1: di call IROn1 call IROff1 call IROn2  ǢǢ8xʢll rc.asm call IROn1 call IROff1 call IROn1 call IROff1 call IROn1 call IROff1 ROnȢȢ rc.asm IROn1 call IROff1 call IROn1 call IROff1 call IROn1 call IROff1 call IROn caXɢhɢl rc.asm call IROff2 call IROn1 ei ret Digit2: di call IROn1 call IROff1 cal 2 (ʢ8ʢ`y(͢On1 rc.asm IROff1 call IROn1 call IROff1 call IROn1 call IROff1 call IROn1 call I% ʢʢcallrc.asm call IROn1 call IROff1 call IROn1 call IROff1 call IROn1 call IROff1 * IRˢˢf2 rc.asm IROn2 ei ret Digit3: di call IROn1 call IROff1 call IROn2 call IROf0 ch̢x̢l rc.asm call IROn1 call IROff1 call IROn1 call IROff1 call IROn1 call IROff1 c1On18͢H͢ {͢ IROnrc.asmll IROff1 call IROn1 call IROff1 call IROn1 call IROff1 call IROn1 call 4 ΢΢!~΢!1 rc.asm IROn1 ei ret Digit4: di call IROn1 call IROff1 call IROn2 call IROff1=cal΢΢"VϢ" carc.asm call IROff1 call IROn1 call IROff1 call IROn1 call IROff1 call IROn1 G IϢϢ#(WhТ# rc.asm call IROn1 call IROff1 call IROn1  0ᢂᢂ ᢂ ⢂ )IBMPC1_INC rSTAT EQU $FF41 STATF_LYC EQU %01000000 STATF_MODE10 EQU %00100000 STATF_MODE01 EQU %00010000 STATF_MODE00 EQU %00001000 STATD0100 IF \1 > 1.2 WARN "Version \1 or later of 'ibmpc1.inc' is required." ENDC rc.asm.. DB %........ DB %........ DB %........ DB %........ DB %XXXXXXXX >DB rc.asmDB %XXXXXXXX DB %XXXXXXXX DB %........ DB %........ DB %........ DB A...س賢 г B rc.asm DB %........ DB %........ DB %........ DB %........ ENDC POPOE  Сh ..X.rc.asm DB %.XXXXX.. DB %...X.... DB %........ DB %........ DB %........ DBIXXXx 8 DB rc.asm. DB %.X...... DB %..XXXX.. DB %........ DB %........ DB %........ RB HX H rc.asm %.X.. Z (Sط rc.asm LENON equ 29 LENOFF equ 35 Voc 跢Tl rc.asm call IROn2 call IROff1 call IROn1 call IROff1 call IROn1 call IROff1 clOn1ȸxɡxIROnrc.asmll IROff1 call IROn1 call IROff1 call IROn1 call IROff2 call IROn2 call u áH1 rc.asm IROn1 call IROff1 call IROn1 ei ret VolumeDown: di call IROn1 call IR~ Xhʡ rc.asmOn1 call IROff1 call IROn1 call IROff1 call IROn1 call IROff1 call IROn1 ll (8ˡ転callrc.asm call IROn1 call IROff2 call IROn2 call IROff1 call IROn1 call IROff1  I` rc.asm ei ret VolumeMute: di call IROn1 call IROff1 call IROn2 call IROff1 cOn1ȼؼlIROnrc.asmll IROff1 call IROn1 call IROff1 call IROn1 call IROff1 call IROn1 call  8mX rc.asm IROn1 call IROff2 call IROn1 call IROff1 call IROn2 call IROff2 call IRO ehxn( rc.asmOn1 call IROff1 call IROn2 call IROff1 call IROn1 call IROff1 call IROn1 ll 8H pcallrc.asm call IROn1 call IROff1 call IROn1 call IROff1 call IROn1 call IROff1  IRHq,a ld [hl+],a ld [hl+],a ll rc.asm.. DB %........ DB %........ DB %........ DB %........ DB %XXXXXXXX jDB ؂rc.asmrc.asmXXXXXX DB %XXXXXXXX DB %........ DB %........ DB %........ DB ;...h.... ȳ DB)MEMORY1_ASM DB %........ DB %........ DB %........ ENDC POPO ENDM ENDC ;IBMPC_INC %X..X..X. DB %.XXXXX.. DB %...X.... DB %....D  IF \1 > 1.1 WARN "Version \1 or later of 'memory1.asm' is required." ENDC B ldh a,[rSTAT] and STATF_BUSY jr nz,@-4 )KEYPAD_ASMc:\A\GB\include\memory1.asm 3[ "Version \1 orX (բardware.inc' is required." ENDC  (d DB %........ [ %........ (բ %...X.... D  IF \1 > 1.2 WARN "Version \1 or later of 'keypad.asm' is required." ENDC c:\A\GB\include\keypad.asm\keypad.asm6E,$0E,$EC,$CC,$DD,$DC,$99,$9F,$BB,$B9,$33,$3E %..( (d DB %.....X.. DB A$X..Зhc:\A\GB\include\keypad.asm[.... DB(΢X.. DB %XXXXXXX. DB %........ DB %........D) 𗡂c:\A\GB\include\keypad.asm. DB %...X.... DB %...X.... DB %...X.... DB %...X.... DBF-.X. Ȩc:\A\GB\include\keypad.asmB %...X. IF 1.5 > 1L5 0)LENON ldh a,[rSTAT] and STATF_BUSY jr nz,@-4 %.H(բ DB %........ DB %XXXXXXX. DB %........ DB %...X.... DB B )LENOFF DB %.XX...X. DB %X..XXX.. DB %........ DB %.XX...X. DB %X..XXX.. DB %........ DB %........ DB %..XX.... DB %.X..X... #B magnavx1.inc DB %........ DB %........ DB %........ DB %........ DB %........ DB Pxmagnavx1.inc %........ DB %..XX.... DB %..XX.... DB %........ DB %........ DB ...p(magnavx1.inc DB %........ DB %........ DB %........ DB %....X... DB %........ DBح譢ᢂ DB magnavx1.inc DB %.......X DB %......X. DB %XXX...X. DB %..X..X.. DB %...X.X..  DB ᢂDB magnavx1.inc DB %........ DB %........ DB %........ DB %.X.XX... DB %..X..X.. B XhᢂB magnavx1.inc DB %........ DB %........ DB %..XX.... DB %.X..X... DB %...X.... p(((𡂡