mirror of
https://github.com/sarah-walker-pcem/pcem.git
synced 2025-07-22 19:30:33 +02:00
Code Cleanup, Fixed Builders.
This commit is contained in:
@@ -1,5 +0,0 @@
|
||||
FROM ubuntu:jammy
|
||||
|
||||
RUN apt-get update && export DEBIAN_FRONTEND=noninteractive \
|
||||
&& apt-get -y install --no-install-recommends git libsdl2-dev libopenal-dev libwxgtk3.0-gtk3-dev \
|
||||
libpcap-dev cmake ninja-build build-essential ca-certificates
|
@@ -1,17 +0,0 @@
|
||||
{
|
||||
"name": "PCem",
|
||||
"build": {
|
||||
"dockerfile": "Dockerfile"
|
||||
},
|
||||
"runArgs": [
|
||||
"--userns=keep-id",
|
||||
"--security-opt=label=disable"
|
||||
],
|
||||
"containerEnv": {
|
||||
"DISPLAY": "${localEnv:DISPLAY}"
|
||||
},
|
||||
"mounts": [
|
||||
"source=/tmp/.X11-unix,target=/tmp/.X11-unix,type=bind,consistency=cached"
|
||||
],
|
||||
"remoteUser": "root"
|
||||
}
|
4
.github/workflows/test-debug-builds.yml
vendored
4
.github/workflows/test-debug-builds.yml
vendored
@@ -14,7 +14,7 @@ jobs:
|
||||
include:
|
||||
- name: Ubuntu 64bit (gcc)
|
||||
os: ubuntu-latest
|
||||
args: -DUSE_EXPERIMENTAL=ON -DUSE_EXPERIMENTAL_PRINTER=OFF -DUSE_EXPERIMENTAL_PGC=ON -DUSE_NETWORKING=ON -DUSE_PCAP_NETWORKING=ON -DCMAKE_BUILD_TYPE=Debug -DPCEM_VERSION_STRING="vNext build ${GITHUB_SHA::8}"
|
||||
args: -DCMAKE_BUILD_TYPE=Debug -DPCEM_VERSION_STRING="vNext build ${GITHUB_SHA::8}"
|
||||
artifacts_name: PCem-Debug-vNext-Ubuntu-${{ github.run_number }}
|
||||
artifacts_path: PCem-Debug-vNext-Ubuntu-${{ github.run_number }}-${{ github.sha }}.tar.bz2
|
||||
installdeps: >-
|
||||
@@ -27,7 +27,7 @@ jobs:
|
||||
- name: Windows 64bits (MSYS2)
|
||||
os: windows-latest
|
||||
compiler: MINGW64
|
||||
args: -DUSE_EXPERIMENTAL=ON -DUSE_EXPERIMENTAL_PRINTER=OFF -DUSE_EXPERIMENTAL_PGC=ON -DUSE_NETWORKING=ON -DUSE_PCAP_NETWORKING=ON -DCMAKE_BUILD_TYPE=Debug -DPCEM_VERSION_STRING="vNext build ${GITHUB_SHA::8}"
|
||||
args: -DCMAKE_BUILD_TYPE=Debug -DPCEM_VERSION_STRING="vNext build ${GITHUB_SHA::8}"
|
||||
artifacts_name: PCem-Debug-vNext-Windows-MINGW64-${{ github.run_number }}
|
||||
artifacts_path: PCem-Debug-vNext-Windows-MINGW64-${{ github.run_number }}-${{ github.sha }}.zip
|
||||
installdeps: >-
|
||||
|
4
.github/workflows/test-release-builds.yml
vendored
4
.github/workflows/test-release-builds.yml
vendored
@@ -14,7 +14,7 @@ jobs:
|
||||
include:
|
||||
- name: Ubuntu 64bit (gcc)
|
||||
os: ubuntu-latest
|
||||
args: -DUSE_EXPERIMENTAL=ON -DUSE_EXPERIMENTAL_PRINTER=OFF -DUSE_EXPERIMENTAL_PGC=ON -DUSE_NETWORKING=ON -DUSE_PCAP_NETWORKING=ON -DCMAKE_BUILD_TYPE=Release -DPCEM_VERSION_STRING="vNext build ${GITHUB_SHA::8}"
|
||||
args: -DCMAKE_BUILD_TYPE=Release -DPCEM_VERSION_STRING="vNext build ${GITHUB_SHA::8}"
|
||||
artifacts_name: PCem-vNext-Ubuntu-${{ github.run_number }}
|
||||
artifacts_path: PCem-vNext-Ubuntu-${{ github.run_number }}-${{ github.sha }}.tar.bz2
|
||||
installdeps: >-
|
||||
@@ -27,7 +27,7 @@ jobs:
|
||||
- name: Windows 64bits (MSYS2)
|
||||
os: windows-latest
|
||||
compiler: MINGW64
|
||||
args: -DUSE_EXPERIMENTAL=ON -DUSE_EXPERIMENTAL_PRINTER=OFF -DUSE_EXPERIMENTAL_PGC=ON -DUSE_NETWORKING=ON -DUSE_PCAP_NETWORKING=ON -DCMAKE_BUILD_TYPE=Release -DPCEM_VERSION_STRING="vNext build ${GITHUB_SHA::8}"
|
||||
args: -DCMAKE_BUILD_TYPE=Release -DPCEM_VERSION_STRING="vNext build ${GITHUB_SHA::8}"
|
||||
artifacts_name: PCem-vNext-Windows-MINGW64-${{ github.run_number }}
|
||||
artifacts_path: PCem-vNext-Windows-MINGW64-${{ github.run_number }}-${{ github.sha }}.zip
|
||||
installdeps: >-
|
||||
|
@@ -14,7 +14,7 @@ jobs:
|
||||
include:
|
||||
- name: Ubuntu 64bit (gcc)
|
||||
os: ubuntu-latest
|
||||
args: -DUSE_EXPERIMENTAL=ON -DUSE_EXPERIMENTAL_PRINTER=OFF -DUSE_EXPERIMENTAL_PGC=ON -DUSE_NETWORKING=ON -DUSE_PCAP_NETWORKING=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DPCEM_RELDEB_AS_RELEASE=OFF -DPCEM_VERSION_STRING="vNext build ${GITHUB_SHA::8}"
|
||||
args: -DCMAKE_BUILD_TYPE=RelWithDebInfo -DPCEM_VERSION_STRING="vNext build ${GITHUB_SHA::8}"
|
||||
artifacts_name: PCem-RelWithDebInfo-vNext-Ubuntu-${{ github.run_number }}
|
||||
artifacts_path: PCem-RelWithDebInfo-vNext-Ubuntu-${{ github.run_number }}-${{ github.sha }}.tar.bz2
|
||||
installdeps: >-
|
||||
@@ -27,7 +27,7 @@ jobs:
|
||||
- name: Windows 64bits (MSYS2)
|
||||
os: windows-latest
|
||||
compiler: MINGW64
|
||||
args: -DUSE_EXPERIMENTAL=ON -DUSE_EXPERIMENTAL_PRINTER=OFF -DUSE_EXPERIMENTAL_PGC=ON -DUSE_NETWORKING=ON -DUSE_PCAP_NETWORKING=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DPCEM_RELDEB_AS_RELEASE=OFF -DPCEM_VERSION_STRING="vNext build ${GITHUB_SHA::8}"
|
||||
args: -DCMAKE_BUILD_TYPE=RelWithDebInfo -DPCEM_VERSION_STRING="vNext build ${GITHUB_SHA::8}"
|
||||
artifacts_name: PCem-RelWithDebInfo-vNext-Windows-MINGW64-${{ github.run_number }}
|
||||
artifacts_path: PCem-RelWithDebInfo-vNext-Windows-MINGW64-${{ github.run_number }}-${{ github.sha }}.zip
|
||||
installdeps: >-
|
||||
|
@@ -12,7 +12,10 @@ target_architecture(PCEM_CPU_TYPE)
|
||||
|
||||
set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -O2 -fomit-frame-pointer -fno-strict-aliasing -flto")
|
||||
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O2 -fomit-frame-pointer -fno-strict-aliasing -flto")
|
||||
|
||||
|
||||
set(CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELEASE} -DDEBUG")
|
||||
set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELEASE} -DDEBUG")
|
||||
|
||||
if(${PCEM_CPU_TYPE} STREQUAL "i386")
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -msse2")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -msse2")
|
||||
@@ -73,7 +76,7 @@ if(USE_EXPERIMENTAL)
|
||||
endif()
|
||||
|
||||
if(CMAKE_BUILD_TYPE STREQUAL "RelWithDebInfo")
|
||||
option(PCEM_RELDEB_AS_RELEASE "Build PCem RelWithDebInfo as Release Mode" ON)
|
||||
option(PCEM_RELDEB_AS_RELEASE "Build PCem RelWithDebInfo as Release Mode" OFF)
|
||||
message("Build PCem RelWithDebInfo as Release Mode: ${PCEM_RELDEB_AS_RELEASE}")
|
||||
endif()
|
||||
|
||||
|
@@ -1,76 +0,0 @@
|
||||
{
|
||||
"configurations": [
|
||||
{
|
||||
"environments": [
|
||||
{
|
||||
"PATH": "C:\\msys64\\mingw64\\bin;C:\\msys64\\usr\\bin;${env.PATH}",
|
||||
"environment": "mingw_64"
|
||||
}
|
||||
],
|
||||
"name": "MinGW x64 - Debug",
|
||||
"generator": "Ninja",
|
||||
"configurationType": "Debug",
|
||||
"inheritEnvironments": [ "mingw_64" ],
|
||||
"cmakeCommandArgs": "-DMSYS=1",
|
||||
"buildCommandArgs": "-v",
|
||||
"ctestCommandArgs": "",
|
||||
"intelliSenseMode": "linux-gcc-x64",
|
||||
"cmakeToolchain": "cmake\\toolchains\\x86_64-w64-mingw32.cmake",
|
||||
"buildRoot": "${workspaceRoot}\\cmake-build-x64-debug"
|
||||
},
|
||||
{
|
||||
"environments": [
|
||||
{
|
||||
"PATH": "C:\\msys64\\mingw32\\bin;C:\\msys64\\usr\\bin;${env.PATH}",
|
||||
"environment": "mingw_i686"
|
||||
}
|
||||
],
|
||||
"name": "MinGW i686 - Debug",
|
||||
"generator": "Ninja",
|
||||
"configurationType": "Debug",
|
||||
"inheritEnvironments": [ "mingw_i686" ],
|
||||
"cmakeCommandArgs": "-DMSYS=1",
|
||||
"buildCommandArgs": "-v",
|
||||
"ctestCommandArgs": "",
|
||||
"intelliSenseMode": "linux-gcc-x86",
|
||||
"cmakeToolchain": "cmake\\toolchains\\i686-w64-mingw32.cmake",
|
||||
"buildRoot": "${workspaceRoot}\\cmake-build-x86-debug"
|
||||
},
|
||||
{
|
||||
"environments": [
|
||||
{
|
||||
"PATH": "C:\\msys64\\mingw64\\bin;C:\\msys64\\usr\\bin;${env.PATH}",
|
||||
"environment": "mingw_64"
|
||||
}
|
||||
],
|
||||
"name": "MinGW x64 - Release",
|
||||
"generator": "Ninja",
|
||||
"configurationType": "Release",
|
||||
"inheritEnvironments": [ "mingw_64" ],
|
||||
"cmakeCommandArgs": "-DMSYS=1",
|
||||
"buildCommandArgs": "-v",
|
||||
"ctestCommandArgs": "",
|
||||
"intelliSenseMode": "linux-gcc-x64",
|
||||
"cmakeToolchain": "cmake\\toolchains\\x86_64-w64-mingw32.cmake",
|
||||
"buildRoot": "${workspaceRoot}\\cmake-build-x64-release"
|
||||
},
|
||||
{
|
||||
"environments": [
|
||||
{
|
||||
"PATH": "C:\\msys64\\mingw32\\bin;C:\\msys64\\usr\\bin;${env.PATH}",
|
||||
"environment": "mingw_i686"
|
||||
}
|
||||
],
|
||||
"name": "MinGW i686 - Release",
|
||||
"generator": "Ninja",
|
||||
"configurationType": "Release",
|
||||
"inheritEnvironments": [ "mingw_i686" ],
|
||||
"cmakeCommandArgs": "-DMSYS=1",
|
||||
"buildCommandArgs": "-v",
|
||||
"ctestCommandArgs": "",
|
||||
"intelliSenseMode": "linux-gcc-x86",
|
||||
"cmakeToolchain": "cmake\\toolchains\\i686-w64-mingw32.cmake",
|
||||
"buildRoot": "${workspaceRoot}\\cmake-build-x86-release"
|
||||
}
|
||||
]
|
||||
}
|
27
README.md
27
README.md
@@ -11,7 +11,7 @@ You can submit patches on our [forum](https://pcem-emulator.co.uk/phpBB3). Befor
|
||||
|
||||
:exclamation: Note: <b>NO COPYRIGHTED ROM FILES ARE INCLUDED NOR WILL THEY BE. PLEASE DO NOT ASK FOR THEM.</b>
|
||||
|
||||
## BSD and Linux supplement (v17)
|
||||
## BSD and Linux supplement
|
||||
|
||||
You will need the following libraries and buildtools (and their dependencies):
|
||||
- SDL2
|
||||
@@ -37,8 +37,11 @@ then `./src/pcem` to run.
|
||||
|
||||
The Linux/BSD versions store BIOS ROM images, configuration files, and other data in `~/.pcem`
|
||||
|
||||
You can specify the Display Engine using `-DPCEM_DISPLAY_ENGINE=` The options you have are wxWidgets, and Qt
|
||||
configure options are :
|
||||
You can specify the Display Engine using `-DPCEM_DISPLAY_ENGINE=` The only valid option you have at this time is
|
||||
wxWidgets
|
||||
|
||||
The configure options are specified below. They are in the format of -D`Option`=`Value`. `Value` under here is the
|
||||
default value.
|
||||
```
|
||||
-DCMAKE_BUILD_TYPE=Release : Generate release build. Recommended for regular use.
|
||||
-DCMAKE_BUILD_TYPE=Debug : Compile with debugging enabled.
|
||||
@@ -46,18 +49,18 @@ configure options are :
|
||||
-DUSE_PCAP_NETWORKING=ON : Build with pcap networking support. (Needs USE_NETWORKING to compile) Requires libpcap.
|
||||
-DUSE_ALSA=OFF : Build with support for MIDI output through ALSA. Requires libasound. (Linux Only)
|
||||
-DFORCE_X11=ON : Enables a hack to force X11 on Wayland systems. See #128 for details. (Linux Only)
|
||||
-DPLUGIN_ENGINE=OFF : Build with plugin support. Builds libpcem-plugin-api and links PCem with it.
|
||||
-DPLUGIN_ENGINE=ON : Build with plugin support. Builds libpcem-plugin-api and links PCem with it.
|
||||
```
|
||||
|
||||
If you are using -DCMAKE_BUILD_TYPE=Debug, there are some more debug options you can enable if needed
|
||||
```
|
||||
-DPCEM_SLIRP_DEBUG=ON : Build PCem with SLIRP_DEBUG debug output
|
||||
-DPCEM_RECOMPILER_DEBUG=ON : Build PCem with RECOMPILER_DEBUG debug output
|
||||
-DPCEM_NE2000_DEBUG=ON : Build PCem with NE2000_DEBUG debug output
|
||||
-DPCEM_EMU8K_DEBUG_REGISTERS=ON : Build PCem with EMU8K_DEBUG_REGISTERS debug output
|
||||
-DPCEM_SB_DSP_RECORD_DEBUG=ON : Build PCem with SB_DSP_RECORD_DEBUG debug output
|
||||
-DPCEM_MACH64_DEBUG=ON : Build PCem with MACH64_DEBUG debug output
|
||||
-DPCEM_DEBUG_EXTRA=ON : Build PCem with DEBUG_EXTRA debug output
|
||||
-DPCEM_SLIRP_DEBUG=OFF : Build PCem with SLIRP_DEBUG debug output
|
||||
-DPCEM_RECOMPILER_DEBUG=OFF : Build PCem with RECOMPILER_DEBUG debug output
|
||||
-DPCEM_NE2000_DEBUG=OFF : Build PCem with NE2000_DEBUG debug output
|
||||
-DPCEM_EMU8K_DEBUG_REGISTERS=OFF : Build PCem with EMU8K_DEBUG_REGISTERS debug output
|
||||
-DPCEM_SB_DSP_RECORD_DEBUG=OFF : Build PCem with SB_DSP_RECORD_DEBUG debug output
|
||||
-DPCEM_MACH64_DEBUG=OFF : Build PCem with MACH64_DEBUG debug output
|
||||
-DPCEM_DEBUG_EXTRA=OFF : Build PCem with DEBUG_EXTRA debug output
|
||||
```
|
||||
|
||||
If you are using -DCMAKE_BUILD_TYPE=RelWithDebInfo, there are additional options you can do
|
||||
@@ -79,7 +82,7 @@ CD-ROM support currently only accesses `/dev/cdrom`. It has not been heavily tes
|
||||
|
||||
## Links
|
||||
|
||||
### PCem emulates the following hardware (as of v17):
|
||||
### PCem emulates the following hardware:
|
||||
|
||||
Hardware | Links
|
||||
--- | ---
|
||||
|
Reference in New Issue
Block a user