From ac9decc8fdfe113c49db6fa1b5adf23cdabac57d Mon Sep 17 00:00:00 2001 From: Jasmine Iwanek Date: Fri, 4 Nov 2022 12:17:05 -0400 Subject: [PATCH 1/5] Modernize MSYS2 Makefile build --- .github/workflows/c-cpp.yml | 28 +++++++++++++++++++++++----- 1 file changed, 23 insertions(+), 5 deletions(-) diff --git a/.github/workflows/c-cpp.yml b/.github/workflows/c-cpp.yml index 8dbd4a4b5..d89bb7c51 100644 --- a/.github/workflows/c-cpp.yml +++ b/.github/workflows/c-cpp.yml @@ -1,4 +1,4 @@ -name: MinGW64 Makefile +name: MSYS2 Makefile on: @@ -16,7 +16,7 @@ on: jobs: build: - name: ${{ matrix.environment.msystem }} Makefile build (DEV_BUILD=${{ matrix.dev-build }}, NEW_DYNAREC=${{ matrix.new-dynarec }}) + name: MSYS2 Makefile build ${{ matrix.build.name }} ${{ matrix.dynarec.name }} build (${{ matrix.environment.msystem }}) runs-on: windows-latest @@ -27,8 +27,22 @@ jobs: strategy: fail-fast: true matrix: - dev-build: ['y', 'n'] - new-dynarec: ['y', 'n'] + build: + - name: Debug + debug: on + dev: off + slug: -Debug + - name: Dev + debug: on + dev: on + slug: -Dev + dynarec: + - name: ODR + new: off + slug: -ODR + - name: NDR + new: on + slug: -NDR environment: - msystem: MINGW32 prefix: mingw-w64-i686 @@ -54,5 +68,9 @@ jobs: ${{ matrix.environment.prefix }}-rtmidi - uses: actions/checkout@v3 - name: make - run: make -fwin/makefile.mingw -j DEV_BUILD=${{ matrix.dev-build }} NEW_DYNAREC=${{ matrix.new-dynarec }} X64=${{ matrix.environment.x64 }} VNC=n + run: make -fwin/makefile.mingw -j DEV_BUILD=${{ matrix.build-type.dev }} DEBUG=${{ matrix.build-type.debug }} NEW_DYNAREC=${{ matrix.dynarec.new }} X64=${{ matrix.environment.x64 }} VNC=n working-directory: ./src + - uses: actions/upload-artifact@v3 + with: + name: '86Box${{ matrix.dynarec.slug }}${{ matrix.build.slug }}-Windows-${{ matrix.environment.msystem }}-gha${{ github.run_number }}' + path: src/86Box.exe From 644108fba138c7b24e21d12847b18a4095087758 Mon Sep 17 00:00:00 2001 From: Jasmine Iwanek Date: Fri, 4 Nov 2022 13:16:09 -0400 Subject: [PATCH 2/5] Correct reported issues --- .github/workflows/c-cpp.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/c-cpp.yml b/.github/workflows/c-cpp.yml index d89bb7c51..795309285 100644 --- a/.github/workflows/c-cpp.yml +++ b/.github/workflows/c-cpp.yml @@ -29,19 +29,19 @@ jobs: matrix: build: - name: Debug - debug: on - dev: off + debug: y + dev: n slug: -Debug - name: Dev - debug: on - dev: on + debug: y + dev: y slug: -Dev dynarec: - name: ODR - new: off + new: n slug: -ODR - name: NDR - new: on + new: y slug: -NDR environment: - msystem: MINGW32 From 6aa977daf59ebad3f8617c3b6a8c6517b311a199 Mon Sep 17 00:00:00 2001 From: Jasmine Iwanek Date: Fri, 4 Nov 2022 17:58:41 -0400 Subject: [PATCH 3/5] Fix my silly mistake --- .github/workflows/c-cpp.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/c-cpp.yml b/.github/workflows/c-cpp.yml index 795309285..a91518084 100644 --- a/.github/workflows/c-cpp.yml +++ b/.github/workflows/c-cpp.yml @@ -68,7 +68,7 @@ jobs: ${{ matrix.environment.prefix }}-rtmidi - uses: actions/checkout@v3 - name: make - run: make -fwin/makefile.mingw -j DEV_BUILD=${{ matrix.build-type.dev }} DEBUG=${{ matrix.build-type.debug }} NEW_DYNAREC=${{ matrix.dynarec.new }} X64=${{ matrix.environment.x64 }} VNC=n + run: make -fwin/makefile.mingw -j DEV_BUILD=${{ matrix.build.dev }} DEBUG=${{ matrix.build.debug }} NEW_DYNAREC=${{ matrix.dynarec.new }} X64=${{ matrix.environment.x64 }} VNC=n working-directory: ./src - uses: actions/upload-artifact@v3 with: From 2e2c2196dab10dc7b1cb1a98175434ca8471451d Mon Sep 17 00:00:00 2001 From: Dimitar Angelov Date: Sat, 5 Nov 2022 00:53:50 +0100 Subject: [PATCH 4/5] Pravetz-16 proper naming of BIOS files --- src/machine/m_xt.c | 19 +++++++++---------- src/video/vid_cga.c | 2 +- 2 files changed, 10 insertions(+), 11 deletions(-) diff --git a/src/machine/m_xt.c b/src/machine/m_xt.c index 0aa0468fa..b7f1f3483 100644 --- a/src/machine/m_xt.c +++ b/src/machine/m_xt.c @@ -334,25 +334,24 @@ machine_xt_pravetz16_imko4_init(const machine_t *model) { int ret; - ret = bios_load_linear("roms/machines/pravetz16/BIOS_IMKO4_FE00.bin", + ret = bios_load_linear("roms/machines/pravetz16/BIOS_IMKO4_FE00.BIN", 0x000fe000, 65536, 0); - if (ret) { - ret = bios_load_aux_linear("roms/machines/pravetz16/IMKO4-D34_SGS-M2764ADIP28.BIN", - 0x000f4000, 8192, 0); + if (ret) + { + bios_load_aux_linear("roms/machines/pravetz16/BIOS_IMKO4_F400.BIN", + 0x000f4000, 8192, 0); - if (ret) { - bios_load_aux_linear("roms/machines/pravetz16/1.bin", + bios_load_aux_linear("roms/machines/pravetz16/BIOS_IMKO4_F600.BIN", 0x000f6000, 8192, 0); - bios_load_aux_linear("roms/machines/pravetz16/2.bin", + bios_load_aux_linear("roms/machines/pravetz16/BIOS_IMKO4_FA00.BIN", 0x000fa000, 8192, 0); - bios_load_aux_linear("roms/machines/pravetz16/5.bin", + bios_load_aux_linear("roms/machines/pravetz16/BIOS_IMKO4_F800.BIN", 0x000f8000, 8192, 0); - bios_load_aux_linear("roms/machines/pravetz16/6.bin", + bios_load_aux_linear("roms/machines/pravetz16/BIOS_IMKO4_FC00.BIN", 0x000fc000, 8192, 0); - } } if (bios_only || !ret) diff --git a/src/video/vid_cga.c b/src/video/vid_cga.c index 3cd581488..a49c89c18 100644 --- a/src/video/vid_cga.c +++ b/src/video/vid_cga.c @@ -540,7 +540,7 @@ cga_pravetz_init(const device_t *info) { cga_t *cga = cga_standalone_init(info); - loadfont("roms/video/cga/CGA - PRAVETZ.BIN", 10); + loadfont("roms/video/cga/PRAVETZ-VDC2.BIN", 10); io_removehandler(0x03dd, 0x0001, cga_in, NULL, NULL, cga_out, NULL, NULL, cga); io_sethandler(0x03dd, 0x0001, cga_pravetz_in, NULL, NULL, cga_pravetz_out, NULL, NULL, cga); From f6add2041021ce9fd8f8231075710d5aa2eefdef Mon Sep 17 00:00:00 2001 From: Dimitar Angelov Date: Sat, 5 Nov 2022 03:11:03 +0100 Subject: [PATCH 5/5] Adding Micoms XL7-Turbo (8088 mainboard, compatible PC/XT) --- src/include/86box/machine.h | 1 + src/machine/m_xt.c | 15 +++++++++++++++ src/machine/machine_table.c | 36 ++++++++++++++++++++++++++++++++++++ 3 files changed, 52 insertions(+) diff --git a/src/include/86box/machine.h b/src/include/86box/machine.h index c8f2314c0..b7109d8fd 100644 --- a/src/include/86box/machine.h +++ b/src/include/86box/machine.h @@ -792,6 +792,7 @@ extern int machine_xt_v20xt_init(const machine_t *); extern int machine_xt_iskra3104_init(const machine_t *); extern int machine_xt_pravetz16_imko4_init(const machine_t *); +extern int machine_xt_micoms_xl7turbo_init(const machine_t *); /* m_xt_compaq.c */ extern int machine_xt_compaq_deskpro_init(const machine_t *); diff --git a/src/machine/m_xt.c b/src/machine/m_xt.c index 0aa0468fa..2a125fee2 100644 --- a/src/machine/m_xt.c +++ b/src/machine/m_xt.c @@ -365,6 +365,21 @@ machine_xt_pravetz16_imko4_init(const machine_t *model) return ret; } +int +machine_xt_micoms_xl7turbo_init(const machine_t *model) +{ + int ret; + + ret = bios_load_linear("roms/machines/mxl7t/XL7_TURBO.BIN", + 0x000fe000, 8192, 0); + + if (bios_only || !ret) + return ret; + + machine_xt_init_ex(model); + return ret; +} + int machine_xt_pc4i_init(const machine_t *model) { diff --git a/src/machine/machine_table.c b/src/machine/machine_table.c index 4f8777875..bdfedc676 100644 --- a/src/machine/machine_table.c +++ b/src/machine/machine_table.c @@ -923,6 +923,42 @@ const machine_t machines[] = { .snd_device = NULL, .net_device = NULL }, + { + .name = "[8088] Micoms XL-7 Turbo", + .internal_name = "mxl7t", + .type = MACHINE_TYPE_8088, + .chipset = MACHINE_CHIPSET_DISCRETE, + .init = machine_xt_micoms_xl7turbo_init, + .pad = 0, + .pad0 = 0, + .pad1 = MACHINE_AVAILABLE, + .pad2 = 0, + .cpu = { + .package = CPU_PKG_8088, + .block = CPU_BLOCK_NONE, + .min_bus = 0, + .max_bus = 0, + .min_voltage = 0, + .max_voltage = 0, + .min_multi = 0, + .max_multi = 0 + }, + .bus_flags = MACHINE_PC, + .flags = MACHINE_FLAGS_NONE, + .ram = { + .min = 64, + .max = 640, + .step = 64 + }, + .nvrmask = 0, + .kbc = KBC_IBM_PC_XT, + .kbc_p1 = 0xff00, + .gpio = 0xffffffff, + .device = NULL, + .vid_device = NULL, + .snd_device = NULL, + .net_device = NULL + }, { .name = "[8088] NCR PC4i", .internal_name = "pc4i",