Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sync up alt builtd #146

Merged
merged 19 commits into from
Feb 19, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ This is a curated and Community managed Mednafen<br> GitHub repo in support of t
<p align="center">
It has been specifically created with additional tweaks and fixes in direct<br>support of the PC-Engine Development community and PCE enthusiasts everywhere.
<p align="center">
<B>Current Release! Mednafen 1.29.0.pceDev-1.2 released on 2022/12/03</B>
<B>Current Release! Mednafen 1.29.0.pceDev-1.2 released on 2023/11/24</B>
<p align="center">
<I><sub>Screenshot showing the various NEW accuracy focussed improvements<br> made to the scanline rendering, general overscan visibility and VDC display resolution rendering</sub></I><br>
<img src="https://user-images.githubusercontent.com/95596143/172072861-3cf2c13a-11ba-47de-a5ea-73c63aa01570.png" width="600">
Expand Down
24 changes: 6 additions & 18 deletions README_macOS_compile.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,35 +14,23 @@ Get Xcode Command Line tools:
xcode-select --install
```

We have confirmed a successful Mednafen build on macOS Monterey running on both Intel(x86_64) and Apple silicon M1(ARM64) architectures and will provide instructions accordingly.
We have confirmed a successful Mednafen build on macOS Monterey and higher running on both Intel(x86_64) and Apple silicon M1(ARM64) architectures.

For a native Intel(x86_64) build we will use "Homebrew" to pull in the needed Mednafen dependencies:
For a native Intel(x86_64) or Apple Silicon(ARM64) build we will use "Homebrew" to pull in the needed Mednafen dependencies:
```
brew install pkg-config gettext sdl2 libsndfile jack lzo zstd
```

**Optional Note:** There is currently an SDL issue with newer SDL2 Brew (2.0.22+) installs that can cause Mednafen to "hang" when exiting due to the SDL Audio close function having changed. To work around this make sure to use the 2.0.22 SDL2 Brew install.

**Update 04/2023:** SDL 2.26.4(SDL-release-2.26.4-0-g07d0f51fa) no longer seems to exhibit this behaviour so we will mark the below as optional in case you are seeing the "hanging" behaviour upon exiting Mednafen.
```
wget https://github.com/Homebrew/homebrew-core/raw/5c1cf00f7540d9cf0344c0bac4aabe4e5a7fa8a5/Formula/sdl2.rb
brew install --build-from-source sdl2.rb
```

For a native Apple silicon M1(ARM64) build we will have to use "MacPorts" in order to get the correct Mednafen dependencies to build:
```
sudo port -N install pkgconfig clang-14 libiconv libsdl2 libcdio gettext libsndfile libmpcdec zlib
```

### Compilation Commands

Mednafen's build process makes use of 'configure' in order to set up environment-specific options in preparation
for the compile; the below instructions to build Mednafen will attempt to use all of your machine's threads when compiling as the compilation process can take up quite some time, the procedure is as follows :
Mednafen's build process makes use of 'configure' in order to set up environment-specific options in preparation for the compile.

The below instructions to build Mednafen will attempt to use all of your machine's threads when compiling as the compilation process can take up quite some time, we disable optimization for the build as Mednafen has proven quite unstable when attempting to have the clang compiler on macOS optimize the application. The compilation procedure is as follows:

```
./configure --enable-ss

make -j `sysctl -n hw.logicalcpu`
make CFLAGS='-g -w' CXXFLAGS='-g -w' -j `sysctl -n hw.logicalcpu`
```

At this point, the Mednafen binary can be found in the mednafen/src/ folder; you may manually copy/move it
Expand Down
24 changes: 24 additions & 0 deletions RELEASE_NOTES.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,29 @@
# Release Notes

## New release 1.2 2023/11/24

### New Features/Improvements:

#### PC-FX Improvements / BugFixes:
- Adds Azerty Keyboard support for Debugging functions
- Improve PC-FX palette editor - In debug mode, change PC-FX palette editor to show 16-bit values, with a colour swatch in the right-hand side to demonstrate actual colour (based on YUV)
- PSG Tweaks Update channel 1 frequency cache upon LFO frequency register writes (the way the channel 1 frequency and LFO frequency are combined is still inaccurate, however, causing frequency update timing granularity to be too high). Ported over MDFN 1.31.0 release

#### PC-Engine Improvements / Bugfixes:
- PSG Tweaks Update channel 1 frequency cache upon LFO frequency register writes (the way the channel 1 frequency and LFO frequency are combined is still inaccurate, however, causing frequency update timing granularity to be too high). Ported over MDFN 1.31.0 release
- Backup memory visibility was previously inconsistent between HuCard and CDROM, and locking behaviour was not always correct. Now, physical memory at $1EE000 should give the "processor's view" of the memory, depending on lock/unlock status, and "Backup Memory" screen should show the actual data (Note: HuCard startup state is still default 'unlocked' which is not correct). Also, $1807 register writes should be able to re-lock memory
- Remove Incorrect IRQ Acknowledgement scenario: TIMER interrupt is supposed to be acknowledged by write to $1403. Original code was also acknowledging it on reads from $1402, which was not supported by official documentation.
- Fix junk appearing on PCE Debug palette screen
- Change Default gamesave name removing hash value for BRAM retention and compatbilty when doing PCE dev builds
- Fix improper CDROM BRAM locking in debugger
- PC Engine music player VU meter shows incorrect channels
- Fix VU Meter display
- Other minor changes to warnings and defaults
- Add CI builds for Windows / Linux

#### Other items:
- This release also contains several Wonderswan module updates that improve emulation accuracy

## New release 1.1 2022/08/21

### New Features/Improvements:
Expand Down
2 changes: 1 addition & 1 deletion mednafen/configure
Original file line number Diff line number Diff line change
Expand Up @@ -4393,7 +4393,7 @@ $as_echo "$ac_cv_safe_to_define___extensions__" >&6; }
#
# Avoid trailing and leading zeroes in the decimal version components to avoid confusing not-so-learned people.
#
MEDNAFEN_VERSION="1.29.0.pceDev-1.1 (`git log -1 --format=format:%h`) built on `date` "
MEDNAFEN_VERSION="1.29.0.pceDev-1.2 (`git log -1 --format=format:%h`) built on `date` "
MEDNAFEN_VERSION_NUMERIC=0x00102900
# 0xJJJnnnRR

Expand Down
2 changes: 1 addition & 1 deletion mednafen/configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ AC_CONFIG_MACRO_DIR([m4])
#
# Avoid trailing and leading zeroes in the decimal version components to avoid confusing not-so-learned people.
#
MEDNAFEN_VERSION="1.29.0.pceDev-1.1 (`git log -1 --format=format:%h`) built on `date` "
MEDNAFEN_VERSION="1.29.0.pceDev-1.2 (`git log -1 --format=format:%h`) built on `date` "
MEDNAFEN_VERSION_NUMERIC=0x00102900
# 0xJJJnnnRR

Expand Down
3 changes: 2 additions & 1 deletion mednafen/src/cdrom/scsicd-pce-commands.inc
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ static void DoNEC_PCE_SAPSP(const uint8 *cdb)
read_sec = read_sec_start = new_read_sec_start;
read_sec_end = toc.tracks[100].lba;

seekms = get_pce_cd_seek_ms(head_pos, read_sec, CD_DATA_TRANSFER_RATE);
seekms = get_pce_cd_seek_ms(head_pos, read_sec);
//printf("From sec %6.6X to %6.6X (SAPSP), ms = %.2f\n", head_pos, read_sec, seekms);
CDDASeekTimer = (uint64)(System_Clock * seekms / 1000);
CDAudioDelay = (uint64)(System_Clock * 260 / 1000);
Expand Down Expand Up @@ -263,6 +263,7 @@ static void DoNEC_PCE_GETDIRINFO(const uint8 *cdb)
data_in[1] = U8_to_BCD(s);
data_in[2] = U8_to_BCD(f);
data_in[3] = toc.tracks[track].control;

data_in_size = 4;
}
break;
Expand Down
Loading
Loading