Subversion Repositories ngs

Rev

Blame | Last modification | View Log | Download | RSS feed | ?url?

  1.  
  2. ;LAST UPDATE: 25.05.2013 savelij
  3. ;version 08.03.2009
  4.  
  5.                 include macros.a80
  6.  
  7. GSDAT           EQU 0XB3
  8. GSCOM           EQU 0XBB
  9. GSCOD           EQU 0X5100
  10.  
  11. OPISAT          EQU 0X6000
  12.  
  13.                 ORG 0X8000
  14. START           EI
  15.                 LD HL,0X0110
  16.                 LD (0X5C09),HL
  17.                 RES 3,(IY+48)
  18.                 LD A,0XFE
  19.                 IN A,(0XFE)
  20.                 RRA
  21.                 LD A,0
  22.                 JR C,$+4
  23.                 LD A,0X10
  24.                 LD BC,0XEFF7
  25.                 OUT (C),A
  26.                 LD A,0X7F
  27.                 IN A,(0XFE)
  28.                 RRA
  29.                 RRA
  30.                 JR NC,LOOP21
  31. LOOP31          LD B,0X30
  32.                 XOR A
  33.                 OUT (GSDAT),A
  34.                 LD A,0X1D
  35.                 OUT (GSCOM),A
  36. LOOP22          HALT
  37.                 DEC B
  38.                 JR Z,LOOP21
  39.                 IN A,(GSCOM)
  40.                 RRA
  41.                 JR C,LOOP22
  42.                 IN A,(GSDAT)
  43.                 CP 0X77
  44.                 JP Z,LOOP13
  45.                 CP 0X8B
  46.                 JR Z,LOOP24
  47. LOOP21          LD A,0X80
  48.                 OUT (0X33),A
  49.                 HALT
  50.                 HALT
  51.                 LD A,0XF3
  52.                 OUT (GSCOM),A
  53.                 LD B,0X30
  54. LOOP25          HALT
  55.                 HALT
  56.                 DEC B
  57.                 JP Z,NO__GS
  58.                 IN A,(GSCOM)
  59.                 RRA
  60.                 JR C,LOOP25
  61. LOOP24          LD BC,GSDAT
  62.                 LD DE,FAT_END-GO_YES
  63.                 LD HL,GSCOD
  64.                 OUT (C),E
  65.                 LD A,0X14
  66.                 OUT (GSCOM),A
  67.                 CALL WC
  68.                 OUT (C),D
  69.                 CALL WD
  70.                 OUT (C),L
  71.                 CALL WD
  72.                 OUT (C),H
  73.                 CALL WD
  74.                 LD HL,GO_YES
  75. LODCOD          OUTI
  76.                 CALL WD
  77.                 DEC DE
  78.                 LD A,D
  79.                 OR E
  80.                 JR NZ,LODCOD
  81.                 LD HL,GSCOD
  82.                 OUT (C),L
  83.                 LD A,0X13
  84.                 OUT (GSCOM),A
  85.                 CALL WC
  86.                 OUT (C),H
  87.                 HALT
  88.                 HALT
  89. LOOP13          LD A,7
  90.                 CALL CLS
  91.                 LD DE,0X4800
  92.                 LD HL,MESS20
  93.                 CALL PRINT
  94.                 XOR A
  95.                 OUT (GSDAT),A
  96.                 LD A,0X1D
  97.                 OUT (GSCOM),A
  98.                 LD B,0
  99.                 CALL WAITGS
  100.                 IN A,(GSDAT)
  101.                 CP 0X77
  102.                 JR Z,Warm
  103.                 CP 0XEE
  104.                 JR NZ,LOOP17
  105.                 LD A,7
  106.                 CALL CLS
  107.                 LD HL,MESS13
  108.                 LD DE,0X5000
  109. LOOP20          CALL PRINT
  110.                 LD HL,MESS15
  111.                 LD DE,0X5040
  112.                 CALL PRINT
  113.                 LD HL,MESS16
  114.                 LD DE,0X5080
  115.                 CALL PRINT
  116.                 JR LOOP16
  117.  
  118. LOOP17          CP 0XDD
  119.                 JR NZ,LOOP26
  120.                 LD A,7
  121.                 CALL CLS
  122.                 LD HL,MESS14
  123.                 LD DE,0X5000
  124.                 JR LOOP20
  125.  
  126. LOOP26          CP 0XBB
  127.                 JR NZ,LOOP27
  128.                 LD A,7
  129.                 CALL CLS
  130.                 LD HL,MESS23
  131.                 LD DE,0X5000
  132.                 JR LOOP20
  133.  
  134. LOOP27          CP 0XCC
  135.                 JR NZ,LOOP13
  136.                 JP NO_NGS
  137.  
  138. LOOP16          BIT 5,(IY+1)
  139.                 JR Z,LOOP16
  140.                 LD A,(IY-0X32)
  141.                 RES 5,(IY+1)
  142.                 CP 0X0D
  143.                 JP Z,START
  144.                 CP 0X20
  145.                 JP Z,LOOP18
  146.                 JR LOOP16
  147.  
  148. Warm            LD A,7
  149.                 CALL CLS
  150.                 LD HL,MESS1
  151.                 LD DE,0X4000
  152.                 CALL PRINT
  153.                 LD HL,MESS2
  154.                 LD DE,0X4040
  155.                 CALL PRINT
  156.                 LD HL,MESS3
  157.                 LD DE,0X4060
  158.                 CALL PRINT
  159.                 LD HL,MESS4
  160.                 LD DE,0X4080
  161.                 CALL PRINT
  162.                 LD HL,MESS5
  163.                 LD DE,0X40A0
  164.                 CALL PRINT
  165.                 LD HL,MESS6
  166.                 LD DE,0X40C0
  167.                 CALL PRINT
  168.                 LD HL,MESS7
  169.                 LD DE,0X4800
  170.                 CALL PRINT
  171.                 LD HL,MESS8
  172.                 LD DE,0X4840
  173.                 CALL PRINT
  174.                 LD HL,MESS9
  175.                 LD DE,0X4860
  176.                 CALL PRINT
  177.                 LD HL,MESS10
  178.                 LD DE,0X48A0
  179.                 CALL PRINT
  180.                 LD HL,MESS11
  181.                 LD DE,0X4880
  182.                 CALL PRINT
  183.                 LD HL,MESS12
  184.                 LD DE,0X48C0
  185.                 CALL PRINT
  186.                 LD HL,MESS24
  187.                 LD DE,0X48E5
  188.                 CALL PRINT
  189.                 LD HL,MESS26
  190.                 LD DE,0X485C
  191.                 CALL PRINT
  192.                 LD HL,MESS27
  193.                 LD DE,0X487C
  194.                 CALL PRINT
  195.                 CALL PRTTBL
  196.                 LD HL,0X59E0
  197.                 LD B,0X20
  198.                 LD A,0X0C
  199.                 OUT (GSCOM),A
  200.                 CALL WN
  201.                 IN A,(GSDAT)
  202.                 LD C,A
  203.                 CALL WN
  204.                 IN A,(GSDAT)
  205.                 LD A,C
  206.                 AND 8
  207.                 XOR 8
  208.                 OR 0X31
  209.                 LD (HL),A
  210.                 INC L
  211.                 DJNZ $-2
  212.                 RES 5,(IY+1)
  213.                 LD A,0X15
  214.                 LD DE,0X400B
  215.                 CALL READ5BT
  216. ;КОЛ-ВО НАЙДЕННОГО
  217.                 CALL NAMELNG
  218.                 CALL DAT_VTS
  219. LOOP            LD A,0X0B
  220.                 LD DE,0X486B
  221.                 CALL READSEC;ВРЕМЯ ИГРАНИЯ
  222.                 CALL BITRATE
  223.                 LD A,0X0C
  224.                 OUT (GSCOM),A
  225.                 CALL WN
  226.                 IN A,(GSDAT)
  227.                 LD H,A
  228.                 CALL WN
  229.                 IN A,(GSDAT)
  230.                 BIT 5,H
  231.                 CALL NZ,NAMELNG
  232. LOOP14          BIT 5,(IY+1)
  233.                 JR Z,LOOP
  234.                 LD A,(IY-0X32)
  235.                 RES 5,(IY+1)
  236.                 CP 0X31
  237.                 JR NZ,LOOP1
  238.                 LD A,1
  239.                 JR LOOP11
  240.  
  241. LOOP1           CP 0X32
  242.                 JR NZ,LOOP2
  243.                 LD A,2
  244.                 JR LOOP11
  245.  
  246. LOOP2           CP 0X33
  247.                 JR NZ,LOOP3
  248.                 LD A,3
  249.                 JR LOOP11
  250.  
  251. LOOP3           CP 0X34
  252.                 JR NZ,LOOP4
  253.                 LD A,4
  254.                 JR LOOP11
  255.  
  256. LOOP4           CP 0X35
  257.                 JR NZ,LOOP5
  258.                 LD A,5
  259.                 JR LOOP11
  260.  
  261. LOOP5           CP 0X30
  262.                 JP Z,EJECT
  263. LOOP7           CP 0X39
  264.                 JR NZ,LOOP8
  265.                 LD A,6
  266.                 OUT (GSCOM),A
  267.                 CALL WC
  268.                 CALL PRTTBL
  269.                 JP LOOP-3
  270.  
  271. LOOP8           CP 0X38
  272.                 JR NZ,LOOP9
  273.                 LD A,7
  274.                 JR LOOP11
  275.  
  276. LOOP9           CP 0X36
  277.                 JR NZ,LOOP10
  278.                 LD A,9
  279.                 JR LOOP11
  280.  
  281. LOOP10          CP 0X37
  282.                 JR NZ,LOOP15
  283.                 LD A,8
  284. LOOP11          OUT (GSCOM),A
  285.                 CALL WC
  286.                 JP LOOP-3
  287.  
  288. LOOP15          CP 0X20
  289.                 JR NZ,LOOP23
  290. LOOP18          CALL NANYKEY
  291.                 XOR A
  292.                 LD BC,0X7FFD
  293.                 OUT (C),A
  294.                 JP 0
  295.  
  296. LOOP23          CP 0X0D
  297.                 JR NZ,LOOP28
  298.                 LD A,0X0A
  299.                 JR LOOP11
  300.  
  301. LOOP28          CP 0X3A
  302.                 JR NZ,LOOP29
  303.                 LD A,0X17
  304.                 JR LOOP11
  305.  
  306. LOOP29          CP 0X21
  307.                 JR NZ,LOOP30
  308.                 LD A,0X18
  309.                 JR LOOP11
  310.  
  311. LOOP30          CP 0X25
  312.                 JR NZ,LOOP32
  313.                 LD A,0X19
  314.                 JR LOOP11
  315.  
  316. LOOP32          CP 0X71
  317.                 JR NZ,LOOP33;Q-FTREBLE
  318.                 LD A,%00000011
  319.                 JR LOOPTBL
  320.  
  321. LOOP33          CP 0X61
  322.                 JR NZ,LOOP34;A-FTREBLE
  323.                 LD A,%00000001
  324.                 JR LOOPTBL
  325.  
  326. LOOP34          CP 0X77
  327.                 JR NZ,LOOP35;W-UTREBLE
  328.                 LD A,%00001100
  329.                 JR LOOPTBL
  330.  
  331. LOOP35          CP 0X73
  332.                 JR NZ,LOOP36;S-UTREBLE
  333.                 LD A,%00000100
  334.                 JR LOOPTBL
  335.  
  336. LOOP36          CP 0X65
  337.                 JR NZ,LOOP37;E-FBASS
  338.                 LD A,%00110000
  339.                 JR LOOPTBL
  340.  
  341. LOOP37          CP 0X64
  342.                 JR NZ,LOOP38;D-FBASS
  343.                 LD A,%00010000
  344.                 JR LOOPTBL
  345.  
  346. LOOP38          CP 0X72
  347.                 JR NZ,LOOP39;R-UBASS
  348.                 LD A,%11000000
  349.                 JR LOOPTBL
  350.  
  351. LOOP39          CP 0X66
  352.                 JP NZ,LOOP;F-UBASS
  353.                 LD A,%01000000
  354. LOOPTBL         PUSH AF
  355.                 LD A,0X1A
  356.                 OUT (GSCOM),A
  357.                 CALL WC
  358.                 POP AF
  359.                 OUT (GSDAT),A
  360.                 CALL PRTTBL
  361.                 JP LOOP
  362.  
  363. WAITGS          LD E,B
  364.                 LD D,0
  365.                 LD HL,VENTIL
  366.                 ADD HL,DE
  367.                 LD A,(HL)
  368.                 LD DE,0X481E
  369.                 CALL PRISYM
  370.                 LD C,6
  371.                 HALT
  372.                 DEC C
  373.                 JR NZ,$-2
  374.                 IN A,(GSCOM)
  375.                 RRA
  376.                 RET NC
  377.                 INC B
  378.                 LD A,4
  379.                 CP B
  380.                 JR NZ,WAITGS
  381.                 LD B,0
  382.                 JR WAITGS
  383.  
  384. NAMELNG         LD A,0X16
  385.                 LD DE,0X484D
  386.                 CALL READ5BT
  387. ;ТЕКУЩИЙ НОМЕР ТРЕКА
  388.                 LD HL,0X8000
  389.                 LD A,0X11
  390.                 OUT (GSCOM),A
  391.                 CALL WC
  392. ;ПОЛУЧИТЬ ДЛИННОЕ ИМЯ
  393.                 LD A,H
  394.                 OUT (GSDAT),A
  395.                 CALL WD
  396.                 LD A,L
  397.                 OUT (GSDAT),A
  398.                 LD HL,OPISAT
  399.                 LD E,0
  400.                 PUSH HL
  401.                 CALL INI_E
  402.                 LD HL,0X5000
  403.                 LD D,H
  404.                 LD E,L
  405.                 LD BC,0X07FF
  406.                 INC E
  407.                 LD (HL),L
  408.                 LDIR
  409.                 POP HL
  410.                 LD B,0X20
  411.                 LD DE,0X5000
  412.                 CALL PRINT_B
  413.                 LD B,0X20
  414.                 LD DE,0X5020
  415.                 CALL PRINT_B
  416.                 LD B,0X20
  417.                 LD DE,0X5040
  418.                 CALL PRINT_B
  419.                 LD B,0X20
  420.                 LD DE,0X5060
  421.                 CALL PRINT_B
  422.                 LD B,0X20
  423.                 LD DE,0X5080
  424.                 CALL PRINT_B
  425.                 LD B,0X20
  426.                 LD DE,0X50A0
  427.                 CALL PRINT_B
  428.                 LD B,0X20
  429.                 LD DE,0X50C0
  430.                 CALL PRINT_B
  431.                 LD B,0X20
  432.                 LD DE,0X50E0
  433.                 JP PRINT_B
  434.  
  435. RD2BYTE         EX AF,AF'
  436.                 LD A,0X1A
  437.                 OUT (GSCOM),A
  438.                 CALL WC
  439.                 EX AF,AF'
  440.                 OUT (GSDAT),A
  441.                 LD B,0X10
  442.                 DJNZ $
  443.                 CALL WN
  444.                 IN A,(GSDAT)
  445.                 LD H,A
  446.                 CALL WN
  447.                 IN A,(GSDAT)
  448.                 LD L,A
  449.                 RET
  450.  
  451. DAT_VTS         LD A,0X0C
  452.                 OUT (GSCOM),A
  453.                 CALL WN
  454.                 IN A,(GSDAT)
  455.                 LD H,A
  456.                 CALL WN
  457.                 IN A,(GSDAT)
  458.                 LD L,A
  459.                 LD DE,0X48AF
  460.                 BIT 7,H
  461.                 LD A,0X2B
  462.                 JR NZ,$+4
  463.                 LD A,0X2D
  464.                 CALL PRISYM
  465.                 BIT 0,H
  466.                 LD A,0X2B
  467.                 JR NZ,$+4
  468.                 LD A,0X2D
  469.                 LD DE,0X488D
  470.                 CALL PRISYM
  471.                 BIT 6,H
  472.                 LD A,0X2B
  473.                 JR NZ,$+4
  474.                 LD A,0X2D
  475.                 LD DE,0X48DF
  476.                 CALL PRISYM
  477.                 LD A,L
  478.                 LD DE,0X48CE
  479.                 CALL PRIHEX
  480. ;ТЕМБР,СУРРОУНД И ГРОМКОСТЬ
  481.                 BIT 4,H
  482.                 LD HL,MESS16+2
  483.                 JR Z,DATVTS1
  484.                 RES 5,(HL)
  485.                 INC HL
  486.                 RES 5,(HL)
  487.                 INC HL
  488.                 RES 5,(HL)
  489.                 INC HL
  490.                 RES 5,(HL)
  491.                 JR DATVTS2
  492.  
  493. DATVTS1         SET 5,(HL)
  494.                 INC HL
  495.                 SET 5,(HL)
  496.                 INC HL
  497.                 SET 5,(HL)
  498.                 INC HL
  499.                 SET 5,(HL)
  500. DATVTS2         LD HL,MESS16
  501.                 LD DE,0X4014
  502.                 CALL PRINT
  503.  
  504. PRTTBL          LD A,0X0C
  505.                 OUT (GSCOM),A
  506.                 CALL WN
  507.                 IN A,(GSDAT)
  508.                 LD H,A
  509.                 CALL WN
  510.                 IN A,(GSDAT)
  511.                 LD A,H
  512.                 BIT 3,A
  513.                 JR Z,EMPTSTR
  514.                 BIT 7,A
  515.                 JR Z,EMPTSTR
  516.                 LD A,0X1B
  517.                 OUT (GSCOM),A
  518.                 CALL WC
  519.                 LD HL,OPISAT+0X0100
  520.                 LD E,8
  521.                 PUSH HL
  522.                 CALL INI_E
  523.                 LD DE,0X48B1
  524.                 LD B,2
  525.                 POP HL
  526.                 CALL PRINT_B
  527.                 REPT 3
  528.                 LD A,0X30
  529.                 CALL PRISYM
  530.                 ENDM
  531.                 LD A,0X2F
  532.                 CALL PRISYM
  533.                 LD B,2
  534.                 CALL PRINT_B
  535.                 INC E
  536.                 LD B,2
  537.                 CALL PRINT_B
  538.                 LD A,0X30
  539.                 CALL PRISYM
  540.                 LD A,0X2F
  541.                 CALL PRISYM
  542.                 LD B,2
  543.                 JP PRINT_B
  544.  
  545. EMPTSTR         LD HL,MESS25
  546.                 LD DE,0X48B1
  547.                 JP PRINT
  548.  
  549. BITRAT1         LD HL,MESS25
  550.                 LD DE,0X4856
  551.                 PUSH HL
  552.                 LD B,5
  553.                 CALL PRINT_B
  554.                 LD DE,0X4878
  555.                 LD B,3
  556.                 POP HL
  557.                 PUSH HL
  558.                 CALL PRINT_B
  559.                 POP HL
  560.                 LD B,0X0C
  561.                 LD DE,0X4834
  562.                 JP PRINT_B
  563.  
  564. BITRATE         LD A,0X1C
  565.                 OUT (GSCOM),A
  566.                 CALL WN
  567.                 IN A,(GSDAT)
  568.                 LD B,A
  569.                 CALL WN
  570.                 IN A,(GSDAT)
  571.                 LD C,A
  572.                 LD A,B
  573.                 AND 0XE0
  574.                 CP %10100000
  575.                 JR Z,BITRAT1
  576.                 LD A,C
  577.                 AND 3
  578.                 LD L,A
  579.                 ADD A,A
  580.                 ADD A,A
  581.                 ADD A,L
  582.                 LD L,A
  583.                 LD H,0
  584.                 LD A,C
  585.                 RRCA
  586.                 RRCA
  587.                 AND 3
  588.                 LD DE,SR0
  589.                 JR Z,BITRAT3
  590.                 DEC A
  591.                 LD DE,SR1
  592.                 JR Z,BITRAT3
  593.                 LD DE,SR2
  594. BITRAT3         ADD HL,DE
  595.                 LD DE,0X4856
  596.                 PUSH BC
  597.                 LD B,5
  598.                 CALL PRINT_B
  599.                 POP BC
  600.                 LD A,C
  601.                 RLCA
  602.                 RLCA
  603.                 AND 3
  604.                 ADD A,A
  605.                 LD A,A
  606.                 LD L,A
  607.                 ADD A,A
  608.                 ADD A,L
  609.                 LD L,A
  610.                 LD H,0
  611.                 LD DE,REJCHAN
  612.                 ADD HL,DE
  613.                 PUSH BC
  614.                 LD B,0X0C
  615.                 LD DE,0X4834
  616.                 CALL PRINT_B
  617.                 POP BC
  618.                 LD A,B
  619.                 AND 0X0F
  620.                 LD L,A
  621.                 ADD A,A
  622.                 ADD A,L
  623.                 LD L,A
  624.                 LD H,0
  625.                 LD A,C
  626.                 AND 0X0C
  627.                 CP 0X0B
  628.                 JR C,$+3
  629.                 ADD HL,HL
  630.                 LD A,C
  631.                 AND 0X30
  632.                 SUB 0X10
  633.                 LD DE,L3ID0
  634.                 JR Z,BITRAT2
  635.                 SUB 0X10
  636.                 LD DE,L2ID0
  637.                 JR Z,BITRAT2
  638.                 LD DE,L1ID0
  639. BITRAT2         ADD HL,DE
  640.                 LD B,3
  641.                 LD DE,0X4878
  642.                 JP PRINT_B
  643.  
  644. READ_GS         OUT (GSCOM),A
  645.                 CALL WN
  646.                 IN A,(GSDAT)
  647.                 LD H,A
  648.                 CALL PRIHEX
  649.                 CALL WN
  650.                 IN A,(GSDAT)
  651.                 LD L,A
  652.                 JP PRIHEX
  653.  
  654. READ5BT         OUT (GSCOM),A
  655.                 REPT 4
  656.                 CALL WN
  657.                 IN A,(GSDAT)
  658.                 CALL PRISYM
  659.                 ENDM
  660.                 CALL WN
  661.                 IN A,(GSDAT)
  662.                 JP PRISYM
  663.  
  664. READSEC         OUT (GSCOM),A
  665.                 REPT 2
  666.                 CALL WN
  667.                 IN A,(GSDAT)
  668.                 CALL PRISYM
  669.                 ENDM
  670.                 LD A,0X3A
  671.                 CALL PRISYM
  672.                 REPT 2
  673.                 CALL WN
  674.                 IN A,(GSDAT)
  675.                 CALL PRISYM
  676.                 ENDM
  677.                 LD A,0X3A
  678.                 CALL PRISYM
  679.                 CALL WN
  680.                 IN A,(GSDAT)
  681.                 CALL PRISYM
  682.                 CALL WN
  683.                 IN A,(GSDAT)
  684.                 JP PRISYM
  685.  
  686. NO_NGS          LD A,7
  687.                 CALL CLS
  688.                 LD DE,0X4809
  689.                 LD HL,MESS17
  690.                 CALL PRINT
  691.                 LD DE,0X4846
  692.                 LD HL,MESS19
  693.                 CALL PRINT
  694.                 CALL NANYKEY
  695.                 CALL ANYKEY
  696.                 CALL NANYKEY
  697. BAS128          XOR A
  698.                 LD BC,0X7FFD
  699.                 OUT (C),A
  700.                 JP 0
  701.  
  702. ANYKEY          XOR A
  703.                 IN A,(0XFE)
  704.                 CPL
  705.                 AND 0X1F
  706.                 JR Z,$-6
  707.                 RET
  708.  
  709. NANYKEY         XOR A
  710.                 IN A,(0XFE)
  711.                 CPL
  712.                 AND 0X1F
  713.                 JR NZ,$-6
  714.                 RET
  715.  
  716. NO__GS          LD A,7
  717.                 CALL CLS
  718.                 LD DE,0X480A
  719.                 LD HL,MESS18
  720.                 CALL PRINT
  721.                 LD DE,0X4846
  722.                 LD HL,MESS19
  723.                 CALL PRINT
  724.                 CALL ANYKEY
  725.                 CALL NANYKEY
  726.                 JR BAS128
  727.  
  728. PRINT_B         LD A,(HL)
  729.                 AND A
  730.                 RET Z
  731.                 INC HL
  732.                 CALL PRISYM
  733.                 DJNZ PRINT_B
  734.                 RET
  735.  
  736. PRINT           LD A,(HL)
  737.                 INC HL
  738.                 AND A
  739.                 RET Z
  740.                 CALL PRISYM
  741.                 JR PRINT
  742.  
  743. VENTIL          DB 0XC4,0X5C,0X7C,0X2F
  744.  
  745. MESS1           DB "Found MP3:      "
  746. ;0X4000 0X400b
  747.                 DB "    "
  748. MESS16          DB 0X22,"Space",0X22," Exit",0
  749. ;0X4014
  750. MESS2           DB "1 Prev. File  "
  751.                 DB "SS+1 Prev. DIR",0
  752. MESS3           DB "2 Play File",0
  753. MESS4           DB "3 Pause",0
  754. MESS5           DB "4 Stop",0
  755. MESS6           DB "5 Next File   "
  756.                 DB "SS+5 Next DIR",0
  757. MESS7           DB "0 Eject SD Card",0
  758. MESS8           DB "Play Number:",0
  759. ;0X4840 0X484D
  760. MESS9           DB "Time Play:",0
  761. ;0X4860 0X486B
  762. MESS10          DB "9 Treble/Bass:",0
  763. ;0X4880 0X4890
  764. MESS11          DB "8 Surround:",0
  765. ;0X48A0 0X48Ad
  766. MESS12          DB "<6-7> Volume:     "
  767.                 DB 0X22,"Enter",0X22," Mute",0
  768. ;0X48C0 0X48Ce
  769. MESS13          DB "SD-Card Not Found",0
  770. ;0X5000
  771. MESS14          DB "FAT not Found",0
  772. ;0X5000
  773. MESS15          DB "Press ",0X22,"ENTER",0X22
  774.                 DB " 4 Restart Init SD",0
  775. MESS17          DB "Neo"
  776. MESS18          DB "GS not found",0
  777. MESS19          DB "Press any key for reset",0
  778. MESS20          DB "Please wait, search MP3"
  779.                 DB " files",0
  780. MESS21          DB "Eject SD card or insert"
  781.                 DB " new card",0
  782. MESS22          DB "Press any key",0
  783. MESS23          DB "MP3 file(s) not found",0
  784. MESS24          DB "Neo Player Light v0.44",0
  785. MESS25          DB "               ",0
  786. MESS26          DB "Hz",0
  787. ;0X487C
  788. MESS27          DB "kbps",0
  789. ;0X489C
  790.  
  791. REJCHAN         DB "      stereo"
  792.                 DB "joint stereo"
  793.                 DB "dual channel"
  794.                 DB "        mono"
  795.  
  796. SR0             DB "11025110252205044100"
  797. SR1             DB "12000120002400048000"
  798. SR2             DB " 8000 80001600032000"
  799.  
  800. L3ID0
  801.                 DB "  - 32 40 48 56 64 80 96"
  802.                 DB "112128160192224256320"
  803.                 DB "  -  8 16 24 32 40 48 56"
  804.                 DB " 64 80 96112128144160"
  805.  
  806. L2ID0
  807.                 DB "  - 32 48 56 64 80 96112"
  808.                 DB "128160192224256320384"
  809.                 DB "  -  8 16 24 32 40 48 56"
  810.                 DB " 64 80 96112128144 160"
  811.  
  812. L1ID0
  813.                 DB "  - 32 64 96128160192224"
  814.                 DB "256288320352384416448"
  815.                 DB "  - 32 48 56 64 80 96112"
  816.                 DB "128144160176192224256"
  817.  
  818. EJECT           LD A,4
  819.                 OUT (GSCOM),A
  820.                 CALL WC
  821.                 LD A,7
  822.                 CALL CLS
  823.                 LD HL,MESS21
  824.                 LD DE,0X4800
  825.                 CALL PRINT
  826.                 LD HL,MESS22
  827.                 LD DE,0X4849
  828.                 CALL PRINT
  829.                 CALL NANYKEY
  830.                 CALL ANYKEY
  831.                 CALL NANYKEY
  832.                 XOR A
  833.                 OUT (GSCOM),A
  834.                 JP LOOP13
  835.  
  836. CLS             LD HL,0X4000
  837.                 LD E,L
  838.                 LD D,H
  839.                 LD (HL),L
  840.                 INC E
  841.                 LD BC,0X1800
  842.                 LDIR
  843. CLSCLR          LD (0X5C8D),A
  844.                 LD (0X5C48),A
  845.                 LD HL,0X5800
  846.                 LD D,H
  847.                 LD E,L
  848.                 LD (HL),A
  849.                 LD BC,0X02FF
  850.                 INC E
  851.                 LDIR
  852.                 RRCA
  853.                 RRCA
  854.                 RRCA
  855.                 AND 7
  856.                 OUT (0XFE),A
  857.                 RET
  858.  
  859. WC              IN A,(GSCOM)
  860.                 RRA
  861.                 JR C,$-3
  862.                 RET
  863.  
  864. WD              IN A,(GSCOM)
  865.                 RLA
  866.                 JR C,$-3
  867.                 RET
  868.  
  869. WN              IN A,(GSCOM)
  870.                 RLA
  871.                 JR NC,$-3
  872.                 RET
  873.  
  874. INI_E           LD BC,GSDAT
  875.                 CALL WN
  876.                 INI
  877.                 DEC E
  878.                 JR NZ,$-6
  879.                 RET
  880.  
  881. PRIHEX          PUSH AF
  882.                 RRA
  883.                 RRA
  884.                 RRA
  885.                 RRA
  886.                 CALL PHC
  887.                 POP AF
  888. PHC             AND 0X0F
  889.                 CP 0X0A
  890.                 JR C,$+4
  891.                 ADD A,7
  892.                 ADD A,0X30
  893. PRISYM          PUSH HL
  894.                 PUSH DE
  895.                 PUSH DE
  896.                 LD L,A
  897.                 LD H,0
  898.                 LD DE,CHARS
  899.                 REPT 3
  900.                 ADD HL,HL
  901.                 ENDM
  902.                 ADD HL,DE
  903.                 POP DE
  904.                 REPT 8
  905.                 LD A,(HL)
  906.                 LD (DE),A
  907.                 INC HL
  908.                 INC D
  909.                 ENDM
  910.                 POP DE
  911.                 POP HL
  912.                 INC E
  913.                 RET
  914.  
  915. GO_YES
  916.                 binclude unp_play4ngs.rom       ; INCB "FATNGSC*"
  917. FAT_END
  918.  
  919. CHARS           binclude altstd.bin     ; INCB "ALTSTD"
  920.