Add LPT device emulation framework.

Move long-broken DAC and Sound Source emulation to new framework.
Add stereo DAC emulation.
This commit is contained in:
SarahW 2017-09-01 11:34:20 +01:00
commit d3232adef5
25 changed files with 785 additions and 334 deletions

View file

@ -24,6 +24,7 @@
#include "ide.h"
#include "keyboard.h"
#include "keyboard_at.h"
#include "lpt.h"
#include "model.h"
#include "mouse.h"
#include "nvr.h"
@ -381,7 +382,8 @@ void resetpchard()
model_init();
mouse_emu_init();
video_init();
speaker_init();
speaker_init();
lpt1_device_init();
#ifdef USE_NETWORKING
vlan_reset(); //NETWORK
@ -590,6 +592,7 @@ void closepc()
disc_close(1);
dumpregs();
closevideo();
lpt1_device_close();
mouse_emu_close();
device_close_all();
}
@ -774,6 +777,10 @@ void loadconfig(char *fn)
enable_sync = config_get_int(CFG_MACHINE, NULL, "enable_sync", 1);
p = (char *)config_get_string(CFG_MACHINE, NULL, "lpt1_device", "");
if (p) strcpy(lpt1_device_name, p);
else strcpy(lpt1_device_name, "");
#ifdef USE_NETWORKING
//network
ethif = config_get_int(CFG_GLOBAL, NULL, "netinterface", 1);
@ -908,6 +915,8 @@ void saveconfig(char *fn)
config_set_string(CFG_MACHINE, NULL, "netcard", network_card_get_internal_name(network_card_current));
#endif
config_set_string(CFG_MACHINE, NULL, "lpt1_device", lpt1_device_name);
for (d = 0; d < num_config_callbacks; ++d)
if (config_callbacks[d].saveconfig)
config_callbacks[d].saveconfig();