|
|
| version 1.5, 2003/10/19 14:56:15 | version 1.11, 2003/10/24 08:07:33 |
|---|---|
| Line 12 | Line 12 |
| #include "pc9861k.h" | #include "pc9861k.h" |
| #include "mpu98ii.h" | #include "mpu98ii.h" |
| #include "board14.h" | #include "board14.h" |
| #include "bios.h" | |
| #include "vram.h" | #include "vram.h" |
| #include "maketext.h" | |
| #include "palettes.h" | #include "palettes.h" |
| #include "font.h" | #include "maketext.h" |
| #include "sound.h" | #include "sound.h" |
| #include "bios.h" | |
| #include "fmboard.h" | #include "fmboard.h" |
| #include "beep.h" | #include "beep.h" |
| #include "font.h" | |
| #include "fddfile.h" | #include "fddfile.h" |
| #include "fdd_mtr.h" | #include "fdd_mtr.h" |
| #include "sxsi.h" | #include "sxsi.h" |
| Line 43 typedef struct { | Line 43 typedef struct { |
| enum { | enum { |
| NP2FLAG_BIN = 0, | NP2FLAG_BIN = 0, |
| NP2FLAG_TERM, | NP2FLAG_TERM, |
| NP2FLAG_CORE, | NP2FLAG_CLOCK, |
| NP2FLAG_DMA, | NP2FLAG_DMA, |
| NP2FLAG_EGC, | NP2FLAG_EGC, |
| NP2FLAG_EXT, | NP2FLAG_EXT, |
| NP2FLAG_EVT, | NP2FLAG_EVT, |
| NP2FLAG_GIJ, | NP2FLAG_GIJ, |
| NP2FLAG_FM, | NP2FLAG_FM, |
| NP2FLAG_BEEP, | |
| NP2FLAG_MIDI, | NP2FLAG_MIDI, |
| NP2FLAG_DISK | NP2FLAG_DISK |
| }; | }; |
| Line 73 typedef struct { | Line 72 typedef struct { |
| int num; | int num; |
| } ENUMTBL; | } ENUMTBL; |
| #define PROCID(a, b, c, d) (((d) << 24) | ((c) << 16) | ((b) << 8) | (a)) | #define PROCID(a, b, c, d) (((d) << 24) + ((c) << 16) + ((b) << 8) + (a)) |
| #define PROC2NUM(a, b) proc2num(&(a), b, sizeof(b)/sizeof(PROCTBL)) | #define PROC2NUM(a, b) proc2num(&(a), (b), sizeof(b)/sizeof(PROCTBL)) |
| #define NUM2PROC(a, b) num2proc(&(a), b, sizeof(b)/sizeof(PROCTBL)) | #define NUM2PROC(a, b) num2proc(&(a), (b), sizeof(b)/sizeof(PROCTBL)) |
| #include "statsave.tbl" | #include "statsave.tbl" |
| Line 349 static int flagload_common(NP2FFILE *f, | Line 348 static int flagload_common(NP2FFILE *f, |
| // ----- | // ----- |
| static int flagload_core(NP2FFILE *f, const STENTRY *t) { | static int flagload_clock(NP2FFILE *f, const STENTRY *t) { |
| int ret; | int ret; |
| ret = flagload_common(f, t); | ret = flagload_common(f, t); |
| if (opna_rate) { | sound_changeclock(); |
| pc.sampleclock = (pc.realclock / opna_rate) + 1; | beep_changeclock(); |
| } | |
| else { | |
| pc.sampleclock = 0; | |
| } | |
| return(ret); | return(ret); |
| } | } |
| Line 846 static int flagload_fm(NP2FFILE *f, cons | Line 841 static int flagload_fm(NP2FFILE *f, cons |
| break; | break; |
| default: | default: |
| saveflg = 0; | |
| break; | break; |
| } | } |
| Line 1165 int statsave_save(const char *filename) | Line 1161 int statsave_save(const char *filename) |
| for (i=0; i<sizeof(np2tbl)/sizeof(STENTRY); i++) { | for (i=0; i<sizeof(np2tbl)/sizeof(STENTRY); i++) { |
| switch(np2tbl[i].type) { | switch(np2tbl[i].type) { |
| case NP2FLAG_BIN: | case NP2FLAG_BIN: |
| case NP2FLAG_CORE: | case NP2FLAG_CLOCK: |
| case NP2FLAG_BEEP: | |
| ret |= flagsave_common(&f, &np2tbl[i]); | ret |= flagsave_common(&f, &np2tbl[i]); |
| break; | break; |
| Line 1249 int statsave_check(const char *filename, | Line 1244 int statsave_check(const char *filename, |
| if (i < (sizeof(np2tbl)/sizeof(STENTRY))) { | if (i < (sizeof(np2tbl)/sizeof(STENTRY))) { |
| switch(np2tbl[i].type) { | switch(np2tbl[i].type) { |
| case NP2FLAG_BIN: | case NP2FLAG_BIN: |
| case NP2FLAG_CLOCK: | |
| ret |= flagcheck_versize(&f, &np2tbl[i], &e); | ret |= flagcheck_versize(&f, &np2tbl[i], &e); |
| break; | break; |
| Line 1256 int statsave_check(const char *filename, | Line 1252 int statsave_check(const char *filename, |
| done = TRUE; | done = TRUE; |
| break; | break; |
| case NP2FLAG_CORE: | |
| case NP2FLAG_DMA: | case NP2FLAG_DMA: |
| case NP2FLAG_EGC: | case NP2FLAG_EGC: |
| case NP2FLAG_EXT: | case NP2FLAG_EXT: |
| case NP2FLAG_EVT: | case NP2FLAG_EVT: |
| case NP2FLAG_GIJ: | case NP2FLAG_GIJ: |
| case NP2FLAG_BEEP: | |
| #if defined(MIDICH) | #if defined(MIDICH) |
| case NP2FLAG_MIDI: | case NP2FLAG_MIDI: |
| #endif | #endif |
| Line 1327 int statsave_load(const char *filename) | Line 1321 int statsave_load(const char *filename) |
| if (i < (sizeof(np2tbl)/sizeof(STENTRY))) { | if (i < (sizeof(np2tbl)/sizeof(STENTRY))) { |
| switch(np2tbl[i].type) { | switch(np2tbl[i].type) { |
| case NP2FLAG_BIN: | case NP2FLAG_BIN: |
| case NP2FLAG_BEEP: | |
| ret |= flagload_common(&f, &np2tbl[i]); | ret |= flagload_common(&f, &np2tbl[i]); |
| break; | break; |
| Line 1335 int statsave_load(const char *filename) | Line 1328 int statsave_load(const char *filename) |
| done = TRUE; | done = TRUE; |
| break; | break; |
| case NP2FLAG_CORE: | case NP2FLAG_CLOCK: |
| ret |= flagload_core(&f, &np2tbl[i]); | ret |= flagload_clock(&f, &np2tbl[i]); |
| break; | break; |
| case NP2FLAG_DMA: | case NP2FLAG_DMA: |