OSDN Git Service

the midi stuff is broke!! ><
authorsparky4 <sparky4@cock.li>
Thu, 16 Jul 2015 22:38:00 +0000 (17:38 -0500)
committersparky4 <sparky4@cock.li>
Thu, 16 Jul 2015 22:38:00 +0000 (17:38 -0500)
modified:   16.exe
modified:   exmmtest.exe
modified:   fmemtest.exe
modified:   fontgfx.exe
modified:   fonttes0.exe
modified:   fonttest.exe
modified:   inputest.exe
modified:   makefile
modified:   maptest.exe
modified:   miditest.exe
modified:   palettec.exe
modified:   pcxtest.exe
modified:   sountest.exe
modified:   src/lib/midi.c
modified:   src/lib/midi.h
modified:   src/miditest.c
modified:   test.exe
modified:   test2.exe
modified:   testemm.exe
modified:   tsthimem.exe

20 files changed:
16.exe
exmmtest.exe
fmemtest.exe
fontgfx.exe
fonttes0.exe
fonttest.exe
inputest.exe
makefile
maptest.exe
miditest.exe
palettec.exe
pcxtest.exe
sountest.exe
src/lib/midi.c
src/lib/midi.h
src/miditest.c
test.exe
test2.exe
testemm.exe
tsthimem.exe

diff --git a/16.exe b/16.exe
index 4f7763a..01c5a5d 100644 (file)
Binary files a/16.exe and b/16.exe differ
index 3099ebc..81f8adc 100644 (file)
Binary files a/exmmtest.exe and b/exmmtest.exe differ
index f74dc94..4df9733 100644 (file)
Binary files a/fmemtest.exe and b/fmemtest.exe differ
index 0582b48..467876e 100644 (file)
Binary files a/fontgfx.exe and b/fontgfx.exe differ
index 01bc01d..a344db5 100644 (file)
Binary files a/fonttes0.exe and b/fonttes0.exe differ
index 2cc9c1d..723156c 100644 (file)
Binary files a/fonttest.exe and b/fonttest.exe differ
index c6a2851..f83dba5 100644 (file)
Binary files a/inputest.exe and b/inputest.exe differ
index 1bdf126..c055a3f 100644 (file)
--- a/makefile
+++ b/makefile
@@ -13,7 +13,7 @@ TARGET_OS = dos
 #-zkl = current codepage
 
 DFLAGS=-DTARGET_MSDOS=16 -DMSDOS=1# -zm
-CFLAGS=-zk0 -wo -x -mc# -zdp# -zp16 -zq
+CFLAGS=-zk0 -wo -x -mc -zu# -zdp# -zp16 -zq
 OFLAGS=-ot -ox -ob -oh -or# -om -ol -ol+
 FLAGS=-0 -d2 -lr $(OFLAGS) $(CFLAGS) $(DFLAGS)
 SRC=src$(DIRSEP)
index cb6dd8c..a80241d 100644 (file)
Binary files a/maptest.exe and b/maptest.exe differ
index f9206c6..f595dbe 100644 (file)
Binary files a/miditest.exe and b/miditest.exe differ
index 533a71d..218d24c 100644 (file)
Binary files a/palettec.exe and b/palettec.exe differ
index 2e3f94d..11c8133 100644 (file)
Binary files a/pcxtest.exe and b/pcxtest.exe differ
index f17ef13..ac0c4bd 100644 (file)
Binary files a/sountest.exe and b/sountest.exe differ
index fe8aa5e..760906c 100644 (file)
@@ -423,7 +423,9 @@ void midi_tick_track(unsigned int i) {
                                        if (b == 0xFF) {
                                                if (c == 0x7F) { /* c=type d=len */
                                                        unsigned long len = midi_trk_read_delta(t);
-//                                                     fprintf(stderr,"Type 0x7F len=%lu %p/%p/%p\n",len,t->raw,t->read,t->fence);
+//====
+                                                       fprintf(stderr,"Type 0x7F len=%lu %p/%p/%p\n",len,t->raw,t->read,t->fence);
+//====
                                                        if (len < 512UL) {
                                                                /* unknown */
                                                                midi_trk_skip(t,len);
@@ -452,7 +454,9 @@ void midi_tick_track(unsigned int i) {
                                                                }
                                                        }
                                                        else {
-//                                                             fprintf(stderr,"Type 0x%02x len=%lu %p/%p/%p\n",c,d,t->raw,t->read,t->fence);
+//====
+                                                               fprintf(stderr,"Type 0x%02x len=%lu %p/%p/%p\n",c,d,t->raw,t->read,t->fence);
+//====
                                                        }
 
                                                        midi_trk_skip(t,d);
@@ -463,7 +467,9 @@ void midi_tick_track(unsigned int i) {
                                        }
                                        else {
                                                unsigned long len = midi_trk_read_delta(t);
-//                                             fprintf(stderr,"Sysex len=%lu %p/%p/%p\n",len,t->raw,t->read,t->fence);
+//====
+                                               fprintf(stderr,"Sysex len=%lu %p/%p/%p\n",len,t->raw,t->read,t->fence);
+//====
                                                midi_trk_skip(t,len);
                                        }
                                        } break;
@@ -484,7 +490,7 @@ void midi_tick_track(unsigned int i) {
        }
 }
 
-void adlib_shut_up();
+//void adlib_shut_up();
 void midi_reset_tracks();
 void midi_reset_channels();
 
index b98f059..ac740c8 100644 (file)
@@ -27,7 +27,7 @@
 #include <dos.h>
 
 //#include "src/lib/doslib/vga.h"
-//#include "src/lib/doslib/dos.h"
+#include "src/lib/doslib/dos.h"
 #include "src/lib/16_head.h"
 #include "src/lib/doslib/8254.h"               /* 8254 timer */
 #include "src/lib/doslib/8259.h"
index 0123016..73b4705 100644 (file)
@@ -32,7 +32,7 @@ int main(int argc,char **argv) {
                printf("Cannot init library\n");
                return 1;
        }
-       if (!probe_8254()) { // we need the timer to keep time with the music
+       if (!probe_8254()) { /* we need the timer to keep time with the music */
                printf("8254 timer not found\n");
                return 1;
        }
@@ -48,14 +48,14 @@ int main(int argc,char **argv) {
                return 1;
        }
 
-       write_8254_system_timer(T8254_REF_CLOCK_HZ / 100); // tick faster at 100Hz please
+       write_8254_system_timer(T8254_REF_CLOCK_HZ / 100); /* tick faster at 100Hz please */
        irq0_cnt = 0;
        irq0_add = 182;
-       irq0_max = 1000; // about 18.2Hz
-       old_irq0 = _dos_getvect(8);//IRQ0
+       irq0_max = 1000; /* about 18.2Hz */
+       old_irq0 = _dos_getvect(8);/*IRQ0*/
        _dos_setvect(8,irq0);
 
-       adlib_shut_up();
+       //adlib_shut_up();
        midi_reset_channels();
        midi_reset_tracks();
        _cli();
@@ -68,8 +68,10 @@ int main(int argc,char **argv) {
 
                _cli();
                adv = irq0_ticks - ptick;
+               //adv = ptick;
                if (adv >= 100UL) adv = 100UL;
                ptick = irq0_ticks;
+               //ptick++;
                _sti();
 
                while (adv != 0) {
@@ -88,15 +90,15 @@ int main(int argc,char **argv) {
        }
 
        midi_playing = 0;
-       adlib_shut_up();
+       //adlib_shut_up();
        shutdown_adlib();
        _dos_setvect(8,old_irq0);
-       write_8254_system_timer(0); // back to normal 18.2Hz
+       write_8254_system_timer(0); /* back to normal 18.2Hz */
 
        for (i=0;i < MIDI_MAX_TRACKS;i++) {
                if (midi_trk[i].raw) {
 #if TARGET_MSDOS == 16 && (defined(__LARGE__) || defined(__COMPACT__))
-                       _dos_freemem(FP_SEG(midi_trk[i].raw)); // NTS: Because we allocated with _dos_allocmem
+                       _dos_freemem(FP_SEG(midi_trk[i].raw)); /* NTS: Because we allocated with _dos_allocmem */
 #else
                        free(midi_trk[i].raw);
 #endif
index 6553fc9..3121770 100644 (file)
Binary files a/test.exe and b/test.exe differ
index f33345c..dd3b21a 100644 (file)
Binary files a/test2.exe and b/test2.exe differ
index 34a1fb2..3db9514 100644 (file)
Binary files a/testemm.exe and b/testemm.exe differ
index dd74098..f14444b 100644 (file)
Binary files a/tsthimem.exe and b/tsthimem.exe differ