From 4a7ed6b39e6d53c8fc97cd38eb656f084e537d6f Mon Sep 17 00:00:00 2001 From: Alexander Guryanov Date: Wed, 11 Oct 2023 15:06:40 +0300 Subject: [PATCH] enable support for sockdrive in dosbox-x --- CMakeLists.txt | 2 +- native/dosbox-x | 2 +- native/jsdos/include/jsdos-drive.h | 7 +++---- native/jsdos/jsdos-drive.cpp | 22 +++++++++++++--------- native/sockdrive | 2 +- src/build.ts | 10 +++++----- src/dos/dosbox/cpp/worker-protocol.cpp | 1 + src/emulators.ts | 1 + src/protocol/protocol.ts | 2 +- targets/dosbox-x-asyncify.txt | 2 +- targets/dosbox-x-sdl2.cmake | 10 +++++----- 11 files changed, 33 insertions(+), 28 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 801febb..729488e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -64,7 +64,7 @@ endif() include_directories( "${SRC_DIR}/protocol" - "${NATIVE_DIR}/sockdrive/lib/ffi" + "${NATIVE_DIR}/sockdrive/include" ) # tier 1 diff --git a/native/dosbox-x b/native/dosbox-x index c5cd698..3b36ecf 160000 --- a/native/dosbox-x +++ b/native/dosbox-x @@ -1 +1 @@ -Subproject commit c5cd698c6e3d779e2715069ae98d26733b399c2e +Subproject commit 3b36ecf77019690015498cf6f668e86f625f2269 diff --git a/native/jsdos/include/jsdos-drive.h b/native/jsdos/include/jsdos-drive.h index d5589ba..6a29313 100644 --- a/native/jsdos/include/jsdos-drive.h +++ b/native/jsdos/include/jsdos-drive.h @@ -10,14 +10,13 @@ namespace jsdos { class SockDrive: public imageDisk { size_t handle; + SockDrive(size_t handle, const std::string& url, const std::string& owner, const std::string& name); public: - SockDrive(const std::string& host, uint16_t port); - virtual ~SockDrive(); - virtual uint8_t Read_AbsoluteSector(uint32_t sectnum, void* data) override; - virtual uint8_t Write_AbsoluteSector(uint32_t sectnum, const void* data) override; + + static SockDrive* create(const std::string& url, const std::string& owner, const std::string& name); }; } diff --git a/native/jsdos/jsdos-drive.cpp b/native/jsdos/jsdos-drive.cpp index 3791edb..6b99ee9 100644 --- a/native/jsdos/jsdos-drive.cpp +++ b/native/jsdos/jsdos-drive.cpp @@ -1,21 +1,25 @@ // -// Created by caiii on 23.08.2023. +// Created by caiiiycuk on 23.08.2023. // #include #include #include - #include -constexpr uint32_t diskSize = 2097152; -constexpr uint32_t sectorSize = 512; -jsdos::SockDrive::SockDrive(const std::string& host, uint16_t port): - imageDisk(nullptr, (std::string(host) + ":" + std::to_string(port)).c_str(), diskSize, true) { - handle = sockdrive_open(host.c_str(), port); - const uint64_t heads = (double) diskSize / sectorSize / 520 / 63 * 1024; - this->Set_Geometry(heads, 520, 63, sectorSize); +jsdos::SockDrive* jsdos::SockDrive::create(const std::string& url, const std::string& owner, const std::string& name) { + auto handle = sockdrive_open(url.c_str(), owner.c_str(), name.c_str(), ""); + if (handle) { + return new jsdos::SockDrive(handle, url, owner, name); + } + + return nullptr; +} + +jsdos::SockDrive::SockDrive(size_t handle, const std::string& url, const std::string& owner, const std::string& name): + imageDisk::imageDisk(nullptr, (url + "{" + owner + "/" + name + "}").c_str(), sockdrive_size(handle), true), handle(handle) { + this->Set_Geometry(sockdrive_heads(handle), sockdrive_cylinders(handle), sockdrive_sectors(handle), sockdrive_sector_size(handle)); } jsdos::SockDrive::~SockDrive() { diff --git a/native/sockdrive b/native/sockdrive index 24bb618..789ed02 160000 --- a/native/sockdrive +++ b/native/sockdrive @@ -1 +1 @@ -Subproject commit 24bb61825507926811d138b2e1d1cfdbe268079c +Subproject commit 789ed025797852b173b15809c043f8b534fc8fab diff --git a/src/build.ts b/src/build.ts index 279626b..be82c21 100644 --- a/src/build.ts +++ b/src/build.ts @@ -5,14 +5,14 @@ // gulpfile.ts/wasm.ts --> generateBuildInfo export const Build = { - version: "0.80.18 (73e5a9a9e1f3043ad1b38a6ef73fbe2a)", - buildSeed: 1695124915487, + version: "0.80.18 (d3c15b448bdaacba7e7d417b0bc1246f)", + buildSeed: 1697024747026, "wdosbox-x.wasm": { - "size": 6500306, + "size": 8647420, "gzSize": 0 }, "wdosbox-x.js": { - "size": 250895, + "size": 287862, "gzSize": 0 }, "wdosbox.wasm": { @@ -20,7 +20,7 @@ export const Build = { "gzSize": 0 }, "wdosbox.js": { - "size": 128241, + "size": 128275, "gzSize": 0 }, "wlibzip.wasm": { diff --git a/src/dos/dosbox/cpp/worker-protocol.cpp b/src/dos/dosbox/cpp/worker-protocol.cpp index b62c6e8..45c8c8b 100644 --- a/src/dos/dosbox/cpp/worker-protocol.cpp +++ b/src/dos/dosbox/cpp/worker-protocol.cpp @@ -124,6 +124,7 @@ EM_JS(void, ws_init_runtime, (const char* sessionId), { switch (data.name) { case "wc-run": { + Module.token = data.props.token || ""; Module._extractBundleToFs(); Module._runRuntime(); sendMessage("ws-server-ready"); diff --git a/src/emulators.ts b/src/emulators.ts index 4c0c6d9..233a076 100644 --- a/src/emulators.ts +++ b/src/emulators.ts @@ -17,6 +17,7 @@ export enum NetworkType { /* eslint-enable no-unused-vars */ export interface BackendOptions { + token?: string | undefined; onExtractProgress?: (bundleIndex: number, file: string, extracted: number, total: number) => void; } diff --git a/src/protocol/protocol.ts b/src/protocol/protocol.ts index a261272..951abe4 100644 --- a/src/protocol/protocol.ts +++ b/src/protocol/protocol.ts @@ -193,7 +193,7 @@ export class CommandInterfaceOverTransportLayer implements CommandInterface { sendBundles() .then(() => { - this.sendClientMessage("wc-run", {}); + this.sendClientMessage("wc-run", { token: this.options.token }); }) .catch((e) => { this.onErr("panic", "Can't send bundles to backend: " + e.message); diff --git a/targets/dosbox-x-asyncify.txt b/targets/dosbox-x-asyncify.txt index 5ff5c6a..b9fdf69 100644 --- a/targets/dosbox-x-asyncify.txt +++ b/targets/dosbox-x-asyncify.txt @@ -1 +1 @@ -["BIOS::cb_bios_boot__func","BIOS::cb_bios_post__func","BIOS::cb_bios_startup_screen__func","BIOS_Int10RightJustifiedPrint","BOOT::Run","BOOT::printError","CALLBACK_Idle","CALLBACK_RunRealFar","CALLBACK_RunRealInt","CHOICE::Run","CPU_ForceV86FakeIO_In","CPU_ForceV86FakeIO_Out","ConnectToServer","DOSBOX_RunMachine","DOS_21Handler","DOS_CheckExtDevice","DOS_CloseFile","DOS_CreateFile","DOS_Device::GetInformation","DOS_Device::Read","DOS_Device::Write","DOS_FindDevice","DOS_GetSTDINStatus","DOS_MakeDir","DOS_OpenFile","DOS_ReadFile","DOS_Shell::BuildCompletions","DOS_Shell::CMD_CHDIR","DOS_Shell::CMD_CLS","DOS_Shell::CMD_COPY","DOS_Shell::CMD_DELETE","DOS_Shell::CMD_DIR","DOS_Shell::CMD_ECHO","DOS_Shell::CMD_PAUSE","DOS_Shell::CMD_TYPE","DOS_Shell::CMD_VOL","DOS_Shell::DoCommand","DOS_Shell::Execute","DOS_Shell::ParseLine","DOS_Shell::Prepare","DOS_Shell::Run","DOS_Shell::ShowPrompt","DOS_Shell::execute_shell_cmd","DOS_WriteFile","EGA16_FillRow","ExceptionPageHandler::Exception","ExceptionPageHandler::writeb","ExceptionPageHandler::writed","ExceptionPageHandler::writew","FinishSetMode","IDE_DelayedCommand","IDE_SelfIO_In","IDE_SelfIO_Out","IMGMAKE::Run","IMGMAKE::printHelp","IMGMOUNT::DetectGeometry","IMGMOUNT::MountFat","IMGMOUNT::MountImageNone","IMGMOUNT::Run","INT10_Handler","INT10_LoadFont","INT10_PutPixel","INT10_ReloadFont","INT10_ScrollWindow","INT10_SetActivePage","INT10_SetCursorPos","INT10_SetCursorShape","INT10_SetSingleDACRegister","INT10_SetVideoMode","INT10_TeletypeOutput","INT10_TeletypeOutputAttr","INT10_ToggleBlinkingBit","INT10_WriteChar","INT13_DiskHandler","INT15_Handler","INT8_Handler","IO_ReadB","IO_WriteB","IPXNET::Run","MEM_BlockCopy","MOUNT::Run","NewInitPageHandler::InitPage","NewInitPageHandler::readb","NewInitPageHandler::writeb","NewInitPageHandler::writew","Normal_Loop","PAGING_NewPageFault","PROGRAMS_Handler","Program::WriteOut","Program::WriteOut_NoParsing","SDLNet_TCP_Send","SHELL_Init","SHELL_Run","VGA_ROM_BIOS_ENTRY_callback_func","WriteChar","asyncify_sleep","backone","byn$mgfn-shared$IO_ReadB","byn$mgfn-shared$IO_WriteB","device_CON::AdjustCursorPosition","device_CON::GetInformation","device_CON::Output","device_CON::Read","device_CON::Real_INT10_SetCursorPos","device_CON::Real_INT10_TeletypeOutput","device_CON::Real_INT10_TeletypeOutputAttr","device_CON::Write","fatDrive::FileCreate","fatDrive::MakeDir","fatFile::Close","fatFile::Flush","fatFromDOSDrive::GetUnmodifiedSector","fatFromDOSDrive::ReadSector","imageDisk::Read_AbsoluteSector","imageDisk::Read_Sector","imageDisk::Write_Sector","initcodepagefont","jsdos::SockDrive::Read_AbsoluteSector","jsdos_main","localFile::Close","localFile::Flush","localFile::Read","localFile::UpdateLocalDateTime","mem_memcpy","mem_readb","mem_writeb","mem_writed","mem_writew","outc","runRuntime","server_network_connect","server_run","showWelcome","time_t_to_DOS_DateTime","BIOS::cb_bios_boot__func(*)*","BIOS::cb_bios_post__func(*)*","BIOS::cb_bios_startup_screen__func(*)*","BIOS_Int10RightJustifiedPrint(*)*","BOOT::Run(*)*","BOOT::printError(*)*","CALLBACK_Idle(*)*","CALLBACK_RunRealFar(*)*","CALLBACK_RunRealInt(*)*","CHOICE::Run(*)*","CPU_ForceV86FakeIO_In(*)*","CPU_ForceV86FakeIO_Out(*)*","ConnectToServer(*)*","DOSBOX_RunMachine(*)*","DOS_21Handler(*)*","DOS_CheckExtDevice(*)*","DOS_CloseFile(*)*","DOS_CreateFile(*)*","DOS_Device::GetInformation(*)*","DOS_Device::Read(*)*","DOS_Device::Write(*)*","DOS_FindDevice(*)*","DOS_GetSTDINStatus(*)*","DOS_MakeDir(*)*","DOS_OpenFile(*)*","DOS_ReadFile(*)*","DOS_Shell::BuildCompletions(*)*","DOS_Shell::CMD_CHDIR(*)*","DOS_Shell::CMD_CLS(*)*","DOS_Shell::CMD_COPY(*)*","DOS_Shell::CMD_DELETE(*)*","DOS_Shell::CMD_DIR(*)*","DOS_Shell::CMD_ECHO(*)*","DOS_Shell::CMD_PAUSE(*)*","DOS_Shell::CMD_TYPE(*)*","DOS_Shell::CMD_VOL(*)*","DOS_Shell::DoCommand(*)*","DOS_Shell::Execute(*)*","DOS_Shell::ParseLine(*)*","DOS_Shell::Prepare(*)*","DOS_Shell::Run(*)*","DOS_Shell::ShowPrompt(*)*","DOS_Shell::execute_shell_cmd(*)*","DOS_WriteFile(*)*","EGA16_FillRow(*)*","ExceptionPageHandler::Exception(*)*","ExceptionPageHandler::writeb(*)*","ExceptionPageHandler::writed(*)*","ExceptionPageHandler::writew(*)*","FinishSetMode(*)*","IDE_DelayedCommand(*)*","IDE_SelfIO_In(*)*","IDE_SelfIO_Out(*)*","IMGMAKE::Run(*)*","IMGMAKE::printHelp(*)*","IMGMOUNT::DetectGeometry(*)*","IMGMOUNT::MountFat(*)*","IMGMOUNT::MountImageNone(*)*","IMGMOUNT::Run(*)*","INT10_Handler(*)*","INT10_LoadFont(*)*","INT10_PutPixel(*)*","INT10_ReloadFont(*)*","INT10_ScrollWindow(*)*","INT10_SetActivePage(*)*","INT10_SetCursorPos(*)*","INT10_SetCursorShape(*)*","INT10_SetSingleDACRegister(*)*","INT10_SetVideoMode(*)*","INT10_TeletypeOutput(*)*","INT10_TeletypeOutputAttr(*)*","INT10_ToggleBlinkingBit(*)*","INT10_WriteChar(*)*","INT13_DiskHandler(*)*","INT15_Handler(*)*","INT8_Handler(*)*","IO_ReadB(*)*","IO_WriteB(*)*","IPXNET::Run(*)*","MEM_BlockCopy(*)*","MOUNT::Run(*)*","NewInitPageHandler::InitPage(*)*","NewInitPageHandler::readb(*)*","NewInitPageHandler::writeb(*)*","NewInitPageHandler::writew(*)*","Normal_Loop(*)*","PAGING_NewPageFault(*)*","PROGRAMS_Handler(*)*","Program::WriteOut(*)*","Program::WriteOut_NoParsing(*)*","SDLNet_TCP_Send(*)*","SHELL_Init(*)*","SHELL_Run(*)*","VGA_ROM_BIOS_ENTRY_callback_func(*)*","WriteChar(*)*","asyncify_sleep(*)*","backone(*)*","byn$mgfn-shared$IO_ReadB(*)*","byn$mgfn-shared$IO_WriteB(*)*","device_CON::AdjustCursorPosition(*)*","device_CON::GetInformation(*)*","device_CON::Output(*)*","device_CON::Read(*)*","device_CON::Real_INT10_SetCursorPos(*)*","device_CON::Real_INT10_TeletypeOutput(*)*","device_CON::Real_INT10_TeletypeOutputAttr(*)*","device_CON::Write(*)*","fatDrive::FileCreate(*)*","fatDrive::MakeDir(*)*","fatFile::Close(*)*","fatFile::Flush(*)*","fatFromDOSDrive::GetUnmodifiedSector(*)*","fatFromDOSDrive::ReadSector(*)*","imageDisk::Read_AbsoluteSector(*)*","imageDisk::Read_Sector(*)*","imageDisk::Write_Sector(*)*","initcodepagefont(*)*","jsdos::SockDrive::Read_AbsoluteSector(*)*","jsdos_main(*)*","localFile::Close(*)*","localFile::Flush(*)*","localFile::Read(*)*","localFile::UpdateLocalDateTime(*)*","mem_memcpy(*)*","mem_readb(*)*","mem_writeb(*)*","mem_writed(*)*","mem_writew(*)*","outc(*)*","runRuntime(*)*","server_network_connect(*)*","server_run(*)*","showWelcome(*)*","time_t_to_DOS_DateTime(*)*"] \ No newline at end of file +["BIOS::cb_bios_boot__func","BIOS::cb_bios_post__func","BIOS::cb_bios_startup_screen__func","BIOS_Int10RightJustifiedPrint","BOOT::Run","BOOT::printError","CALLBACK_Idle","CALLBACK_RunRealFar","CALLBACK_RunRealInt","CHOICE::Run","CPU_ForceV86FakeIO_In","CPU_ForceV86FakeIO_Out","ConnectToServer","DOSBOX_RunMachine","DOS_21Handler","DOS_CheckExtDevice","DOS_CloseFile","DOS_CreateFile","DOS_Device::GetInformation","DOS_Device::Read","DOS_Device::Write","DOS_FindDevice","DOS_GetSTDINStatus","DOS_MakeDir","DOS_OpenFile","DOS_ReadFile","DOS_Shell::BuildCompletions","DOS_Shell::CMD_CHDIR","DOS_Shell::CMD_CLS","DOS_Shell::CMD_COPY","DOS_Shell::CMD_DELETE","DOS_Shell::CMD_DIR","DOS_Shell::CMD_ECHO","DOS_Shell::CMD_PAUSE","DOS_Shell::CMD_TYPE","DOS_Shell::CMD_VOL","DOS_Shell::DoCommand","DOS_Shell::Execute","DOS_Shell::ParseLine","DOS_Shell::Prepare","DOS_Shell::Run","DOS_Shell::ShowPrompt","DOS_Shell::execute_shell_cmd","DOS_WriteFile","EGA16_FillRow","ExceptionPageHandler::Exception","ExceptionPageHandler::writeb","ExceptionPageHandler::writed","ExceptionPageHandler::writew","FinishSetMode","IDE_DelayedCommand","IDE_SelfIO_In","IDE_SelfIO_Out","IMGMAKE::Run","IMGMAKE::printHelp","IMGMOUNT::DetectGeometry","IMGMOUNT::MountFat","IMGMOUNT::MountImageNone","IMGMOUNT::Run","INT10_Handler","INT10_LoadFont","INT10_PutPixel","INT10_ReloadFont","INT10_ScrollWindow","INT10_SetActivePage","INT10_SetCursorPos","INT10_SetCursorShape","INT10_SetSingleDACRegister","INT10_SetVideoMode","INT10_TeletypeOutput","INT10_TeletypeOutputAttr","INT10_ToggleBlinkingBit","INT10_WriteChar","INT13_DiskHandler","INT15_Handler","INT8_Handler","IO_ReadB","IO_WriteB","IPXNET::Run","MEM_BlockCopy","MOUNT::Run","NewInitPageHandler::InitPage","NewInitPageHandler::readb","NewInitPageHandler::writeb","NewInitPageHandler::writew","Normal_Loop","PAGING_NewPageFault","PROGRAMS_Handler","Program::WriteOut","Program::WriteOut_NoParsing","SDLNet_TCP_Send","SHELL_Init","SHELL_Run","VGA_ROM_BIOS_ENTRY_callback_func","WriteChar","asyncify_sleep","backone","byn$mgfn-shared$IO_ReadB","byn$mgfn-shared$IO_WriteB","device_CON::AdjustCursorPosition","device_CON::GetInformation","device_CON::Output","device_CON::Read","device_CON::Real_INT10_SetCursorPos","device_CON::Real_INT10_TeletypeOutput","device_CON::Real_INT10_TeletypeOutputAttr","device_CON::Write","fatDrive::FileCreate","fatDrive::MakeDir","fatFile::Close","fatFile::Flush","fatFromDOSDrive::GetUnmodifiedSector","fatFromDOSDrive::ReadSector","imageDisk::Read_AbsoluteSector","imageDisk::Read_Sector","imageDisk::Write_Sector","initcodepagefont","jsdos::SockDrive::Read_AbsoluteSector","jsdos::SockDrive::create","jsdos_main","localFile::Close","localFile::Flush","localFile::Read","localFile::UpdateLocalDateTime","mem_memcpy","mem_readb","mem_writeb","mem_writed","mem_writew","outc","runRuntime","server_network_connect","server_run","showWelcome","time_t_to_DOS_DateTime","BIOS::cb_bios_boot__func(*)*","BIOS::cb_bios_post__func(*)*","BIOS::cb_bios_startup_screen__func(*)*","BIOS_Int10RightJustifiedPrint(*)*","BOOT::Run(*)*","BOOT::printError(*)*","CALLBACK_Idle(*)*","CALLBACK_RunRealFar(*)*","CALLBACK_RunRealInt(*)*","CHOICE::Run(*)*","CPU_ForceV86FakeIO_In(*)*","CPU_ForceV86FakeIO_Out(*)*","ConnectToServer(*)*","DOSBOX_RunMachine(*)*","DOS_21Handler(*)*","DOS_CheckExtDevice(*)*","DOS_CloseFile(*)*","DOS_CreateFile(*)*","DOS_Device::GetInformation(*)*","DOS_Device::Read(*)*","DOS_Device::Write(*)*","DOS_FindDevice(*)*","DOS_GetSTDINStatus(*)*","DOS_MakeDir(*)*","DOS_OpenFile(*)*","DOS_ReadFile(*)*","DOS_Shell::BuildCompletions(*)*","DOS_Shell::CMD_CHDIR(*)*","DOS_Shell::CMD_CLS(*)*","DOS_Shell::CMD_COPY(*)*","DOS_Shell::CMD_DELETE(*)*","DOS_Shell::CMD_DIR(*)*","DOS_Shell::CMD_ECHO(*)*","DOS_Shell::CMD_PAUSE(*)*","DOS_Shell::CMD_TYPE(*)*","DOS_Shell::CMD_VOL(*)*","DOS_Shell::DoCommand(*)*","DOS_Shell::Execute(*)*","DOS_Shell::ParseLine(*)*","DOS_Shell::Prepare(*)*","DOS_Shell::Run(*)*","DOS_Shell::ShowPrompt(*)*","DOS_Shell::execute_shell_cmd(*)*","DOS_WriteFile(*)*","EGA16_FillRow(*)*","ExceptionPageHandler::Exception(*)*","ExceptionPageHandler::writeb(*)*","ExceptionPageHandler::writed(*)*","ExceptionPageHandler::writew(*)*","FinishSetMode(*)*","IDE_DelayedCommand(*)*","IDE_SelfIO_In(*)*","IDE_SelfIO_Out(*)*","IMGMAKE::Run(*)*","IMGMAKE::printHelp(*)*","IMGMOUNT::DetectGeometry(*)*","IMGMOUNT::MountFat(*)*","IMGMOUNT::MountImageNone(*)*","IMGMOUNT::Run(*)*","INT10_Handler(*)*","INT10_LoadFont(*)*","INT10_PutPixel(*)*","INT10_ReloadFont(*)*","INT10_ScrollWindow(*)*","INT10_SetActivePage(*)*","INT10_SetCursorPos(*)*","INT10_SetCursorShape(*)*","INT10_SetSingleDACRegister(*)*","INT10_SetVideoMode(*)*","INT10_TeletypeOutput(*)*","INT10_TeletypeOutputAttr(*)*","INT10_ToggleBlinkingBit(*)*","INT10_WriteChar(*)*","INT13_DiskHandler(*)*","INT15_Handler(*)*","INT8_Handler(*)*","IO_ReadB(*)*","IO_WriteB(*)*","IPXNET::Run(*)*","MEM_BlockCopy(*)*","MOUNT::Run(*)*","NewInitPageHandler::InitPage(*)*","NewInitPageHandler::readb(*)*","NewInitPageHandler::writeb(*)*","NewInitPageHandler::writew(*)*","Normal_Loop(*)*","PAGING_NewPageFault(*)*","PROGRAMS_Handler(*)*","Program::WriteOut(*)*","Program::WriteOut_NoParsing(*)*","SDLNet_TCP_Send(*)*","SHELL_Init(*)*","SHELL_Run(*)*","VGA_ROM_BIOS_ENTRY_callback_func(*)*","WriteChar(*)*","asyncify_sleep(*)*","backone(*)*","byn$mgfn-shared$IO_ReadB(*)*","byn$mgfn-shared$IO_WriteB(*)*","device_CON::AdjustCursorPosition(*)*","device_CON::GetInformation(*)*","device_CON::Output(*)*","device_CON::Read(*)*","device_CON::Real_INT10_SetCursorPos(*)*","device_CON::Real_INT10_TeletypeOutput(*)*","device_CON::Real_INT10_TeletypeOutputAttr(*)*","device_CON::Write(*)*","fatDrive::FileCreate(*)*","fatDrive::MakeDir(*)*","fatFile::Close(*)*","fatFile::Flush(*)*","fatFromDOSDrive::GetUnmodifiedSector(*)*","fatFromDOSDrive::ReadSector(*)*","imageDisk::Read_AbsoluteSector(*)*","imageDisk::Read_Sector(*)*","imageDisk::Write_Sector(*)*","initcodepagefont(*)*","jsdos::SockDrive::Read_AbsoluteSector(*)*","jsdos::SockDrive::create(*)*","jsdos_main(*)*","localFile::Close(*)*","localFile::Flush(*)*","localFile::Read(*)*","localFile::UpdateLocalDateTime(*)*","mem_memcpy(*)*","mem_readb(*)*","mem_writeb(*)*","mem_writed(*)*","mem_writew(*)*","outc(*)*","runRuntime(*)*","server_network_connect(*)*","server_run(*)*","showWelcome(*)*","time_t_to_DOS_DateTime(*)*"] \ No newline at end of file diff --git a/targets/dosbox-x-sdl2.cmake b/targets/dosbox-x-sdl2.cmake index cec2042..f41e5a7 100644 --- a/targets/dosbox-x-sdl2.cmake +++ b/targets/dosbox-x-sdl2.cmake @@ -619,7 +619,7 @@ set(SOURCES_X_SDL_MAIN "${DBX_PATH}/src/hardware/mixer.cpp" "${DBX_PATH}/src/hardware/ipx.cpp" "${DBX_PATH}/src/hardware/ipxserver.cpp" - "${NATIVE_DIR}/sockdrive/lib/ffi/SDL2/sockdrive.cpp" + "${NATIVE_DIR}/sockdrive/SDL2/sockdrive.cpp" ) set(SOURCES_X_JSDOS_CORE @@ -630,7 +630,7 @@ set(SOURCES_X_JSDOS_CORE "${NATIVE_DIR}/jsdos/jsdos-support.cpp" "${NATIVE_DIR}/jsdos/jsdos-events.cpp" "${NATIVE_DIR}/jsdos/jsdos-drive.cpp" - "${NATIVE_DIR}/sockdrive/lib/ffi/lz4/lz4.c" + "${NATIVE_DIR}/sockdrive/lz4/lz4.c" ) set(SOURCES_X_JSDOS_MAIN @@ -641,7 +641,7 @@ set(SOURCES_X_JSDOS_MAIN "${NATIVE_DIR}/sdl2net/SDLnet.c" "${NATIVE_DIR}/sdl2net/SDLnetTCP.c" "${NATIVE_DIR}/sdl2net/SDLnetselect.c" - "${NATIVE_DIR}/sockdrive/lib/ffi/js/sockdrive.cpp" + "${NATIVE_DIR}/sockdrive/js/sockdrive.cpp" ) add_library(libdosbox-x-sdl2 OBJECT ${SOURCES_X_SDL} ${SOURCES_X_CORE} ${SOURCES_X_JSDOS_CORE}) @@ -707,8 +707,8 @@ if (${EMSCRIPTEN}) -fwasm-exceptions "-sUSE_ZLIB=1" "-sUSE_SDL=2" - # "--profiling-funcs" - # "-sASSERTIONS=1" + # "--profiling-funcs" + # "-sASSERTIONS=1" # "-sSAFE_HEAP=2" "-sASYNCIFY=1" "-sASYNCIFY_IMPORTS=['syncSleep']"