Commit Graph

1823 Commits

Author SHA1 Message Date
Rikard Bengtsson
09e2f4fd03 Fix bug in dead zone code affecting DS3/DS4 (#866)
A small bug was introduced with the new dead zone code that made it ignore "quirks" regarding DS3/DS4. These devices should automatically be given a dead zone of 10, as it was before.
2024-01-15 13:00:13 +08:00
Sorgelig
bfa4d76d57 Release 20240110. 2024-01-10 23:06:14 +08:00
Sorgelig
7b01e79b70 video: adjust SPD data. 2024-01-10 22:29:09 +08:00
Sorgelig
613f808ffb video: fix SPD infoframe. 2023-12-30 02:39:55 +08:00
Sorgelig
18b2ee21e9 video: send SPD info frame in direct_video mode. 2023-12-23 06:48:31 +08:00
Rikard Bengtsson
1b8ed443a8 Add setting to disable automatic switching of controller pak for p1 (#863) 2023-12-22 14:36:23 +08:00
Sorgelig
0419387578 video: support for direct_video=2 mode (experimental). 2023-12-20 21:37:55 +08:00
Sorgelig
4483501011 user_io: don't waste time for crc32 if cheats aren't used. 2023-12-17 00:14:34 +08:00
Marcoen Hirschberg
52076b908b N64: support fast ROM loading (#862)
Normal ROM loading is still supported to not break older versions of the
core.
2023-12-16 01:35:57 +08:00
Matheus Fraguas
490c99dd6f Retrozord pid (#860)
* RetroZord VID:PID

Added the VID;PID to make_unique, and to the two special input modes.
Removed the Arduino Leonardo specific PID, leaving only he main arduino VID. So any DIY adapter using an arduino will work.

* Use UNIQ field on RetroZord Adapter
2023-12-09 22:12:53 +08:00
Rikard Bengtsson
e9340593f4 N64 improvements, save files (#859)
N64 improvements. Split N64 save files into eep, sra, fla, mpk and tpk files.
Add "wide" tag detection to database, auto-switches to widescreen if found.
Prioritize N64-database_user.txt, so that people can override games already in the regular database file.
Honor order that rpak, cpak and tpak are written in database, for p1 controller.
2023-12-05 20:55:12 +08:00
Rikard Bengtsson
542b6f4d73 Added dead zone configuration (#857)
User can define dead zone by device identifier and a radius.
2023-12-01 17:51:05 +08:00
Niema Moshiri
470c0ab629 Added Dockerfile and .devcontainer (#855) 2023-11-26 16:21:19 +08:00
Rikard Bengtsson
c802a6a014 N64 improvements. (#853)
* N64 improvements.

Better Auto detection of N64 games (region, security chips, save type).
Better info message after loading a game. Clean up.

* Update n64.cpp

Accidentally included the header file twice.
2023-11-21 02:08:58 +08:00
Hans Larsen
626788a319 Fix: when extensions are less than 3 characters send NUL (#849)
* Fix: when extensions are less than 3 characters send NUL

Currently if the extension is less than 3 characters the last characters
of the filename will be sent to the FPGA. These are not consistent and
would not help the core establish what kind of file it is.

There are few ROMs with less than 3 characters, but they do exist (e.g.
.ws for WonderSwan). It is unclear reading the code how those are
handled outside of this specific function.

## Security considerations
This does not fix a buffer overflow as the code to get there would fail
if the complete filename would be less than 4 characters (e.g. the root
filesystem is read only).

## Testing
This has been tested with the happy path; the code at least works with
current files.

* Apply comment
2023-11-10 03:48:40 +08:00
trbocode
c0e69e170b Fix N64 for gb file extension (#847)
Previous commit detected .gb files as N64
2023-11-06 16:34:00 +08:00
MikeS11
10b0523482 YC.txt Update 20231103 (#846)
- Update N64 Timing for new ASYNC module
- Add Splatter House
2023-11-06 16:27:47 +08:00
trbocode
c3c0d8cf64 Fix N64 condition (#845) 2023-11-03 18:41:22 +08:00
MikeS11
814d88567f YC.txt Update 20231029 (#844)
- Added a section for PAL-60/PAL-M
- Update Cave values
- Added N64 Beta - (Will require update for async video module)
- Added PAL-60 values for NES/SNES/MEGADRIVE/TGFX16 (
2023-10-30 22:20:29 +08:00
Rikard Bengtsson
61efed2cba N64: Add CIC5101 type. Don't analyze gameboy roms. (#843)
* Squashed commit of the following:

commit 40c58abf1d87e870d20ab77bf2934df6ed6d7b94
Merge: 1fc9c37 7c65b22
Author: Rikard Bengtsson <rikard@loginhasselberg.se>
Date:   Fri Oct 6 09:00:07 2023 +0200

    Merge branch 'master' of https://github.com/yxkalle/Main_MiSTer

commit 1fc9c37c070b54719aa6ae14890db5fc6bcec3e1
Author: Rikard Bengtsson <rikard.bengtsson@yahoo.se>
Date:   Fri Oct 6 08:57:57 2023 +0200

    N64: Just some cleanup. Made code simpler. Added some comments where needed.

commit 7c65b22cab1a33f599b3a7ecb2faaaa27613046b
Author: Rikard Bengtsson <rikard@loginhasselberg.se>
Date:   Fri Oct 6 04:09:51 2023 +0200

    Delete MiSTer_noface

commit fe2169544f5ce5ace125109bf65df16dc65594a2
Merge: c163956 ee5659a
Author: Rikard Bengtsson <rikard.bengtsson@yahoo.se>
Date:   Fri Oct 6 03:28:02 2023 +0200

    Merge branch 'master' into add-id-to-db

commit c1639563da1ea714575f51f27a21df9c2f493a6e
Author: Rikard Bengtsson <rikard@loginhasselberg.se>
Date:   Fri Oct 6 03:15:05 2023 +0200

    Update n64.cpp

commit f4a6b98b5dd650bc13e08db8bb21e3da31fea64b
Author: Rikard Bengtsson <rikard@loginhasselberg.se>
Date:   Fri Oct 6 03:12:51 2023 +0200

    cleanup

commit 401b9dc6a9b2d0dd06c18be1e48014b3dc81e946
Author: Rikard Bengtsson <rikard@loginhasselberg.se>
Date:   Tue Oct 3 22:48:03 2023 +0200

    Clean-up

    Clean-up the code, added some comments. Allow uppercase md5s in the database.

commit e0e2affdfe277577820ba73a202b06311b645ec7
Author: Rikard Bengtsson <rikard@loginhasselberg.se>
Date:   Mon Oct 2 20:05:28 2023 +0200

    Cleaner code?

commit 554666832bd55d924b531f469a45cb7996f13e03
Author: Rikard Bengtsson <rikard@loginhasselberg.se>
Date:   Sun Oct 1 02:13:00 2023 +0200

    Delete N64-database.txt

    Delete before PR

commit 9e8fc3f30c36ea9de59d4f1801a4341edbf73eb8
Author: Rikard Bengtsson <rikard@loginhasselberg.se>
Date:   Sun Oct 1 02:09:07 2023 +0200

    Some commenting and clean-up

commit be19bb6e679cd76d32f9b0382c08052ba1e68944
Author: Rikard Bengtsson <rikard@loginhasselberg.se>
Date:   Sun Oct 1 01:19:05 2023 +0200

    Autodetect settings by ID

    Settings are saved in the database text files as usual, but you can match by both MD5 (first 4096), MD5 (full) as well as ID + region + revision.

* Added support for hacked boot codes

* Update n64.cpp
2023-10-29 06:52:17 +08:00
Sorgelig
bf2eb381ba file_io: fix for single-file zip. 2023-10-27 05:13:26 +08:00
Sorgelig
44139157a2 file_io: fix listing inside zip. 2023-10-26 02:32:13 +08:00
Sorgelig
4fab9a5aa7 IDE support for Uneon core. 2023-10-24 22:36:22 +08:00
Alexey Melnikov
64b6cc5a88 Update names.txt 2023-10-23 18:46:05 +08:00
MikeS11
b4e2d5fd0d YC.txt Update 20231018 (#839)
Added Saturn
2023-10-20 00:47:06 +08:00
Sorgelig
2462c8e00e Release 20231018. 2023-10-18 19:43:38 +08:00
trbocode
78edf5f58c Added controller handling for new N64 options (#838)
* Added controller handling for new N64 options

* Move to N64 folder and add per stick ranges

* Improve latency
2023-10-16 07:08:44 +08:00
MikeS11
222d61776f Update to YC Key Compare (#836)
- Add an expanded key option to include core pixel freq in key E.g. Corename_FPS_Fpix=PhaseInc
- Fixes issue with matching YC key when Saturn core changes from low res to high res mode, as the FPS remains the same when the pixel clocks change (E.g. 6.71Mhz vs 7.16Mhz)
- Tested with existing yc.txt list as well as new Saturn keys for yc.txt
2023-10-13 19:31:57 +08:00
zakk4223
9685215fec Saturn CHD image loading (#835) 2023-10-11 18:26:20 +08:00
Patrick Pollock
22834acc98 Scale N64 analog optimally for different gate shapes (#834)
* Scale N64 analog optimally wrt gate shapes

* Limit max_range to near diagonals

* Make magic numbers adjustable constants
2023-10-11 03:05:52 +08:00
Rikard Bengtsson
c9994f9dd2 Cleanup of n64.cpp (#833)
* Squashed commit of the following:

commit 40c58abf1d87e870d20ab77bf2934df6ed6d7b94
Merge: 1fc9c37 7c65b22
Author: Rikard Bengtsson <rikard@loginhasselberg.se>
Date:   Fri Oct 6 09:00:07 2023 +0200

    Merge branch 'master' of https://github.com/yxkalle/Main_MiSTer

commit 1fc9c37c070b54719aa6ae14890db5fc6bcec3e1
Author: Rikard Bengtsson <rikard.bengtsson@yahoo.se>
Date:   Fri Oct 6 08:57:57 2023 +0200

    N64: Just some cleanup. Made code simpler. Added some comments where needed.

commit 7c65b22cab1a33f599b3a7ecb2faaaa27613046b
Author: Rikard Bengtsson <rikard@loginhasselberg.se>
Date:   Fri Oct 6 04:09:51 2023 +0200

    Delete MiSTer_noface

commit fe2169544f5ce5ace125109bf65df16dc65594a2
Merge: c163956 ee5659a
Author: Rikard Bengtsson <rikard.bengtsson@yahoo.se>
Date:   Fri Oct 6 03:28:02 2023 +0200

    Merge branch 'master' into add-id-to-db

commit c1639563da1ea714575f51f27a21df9c2f493a6e
Author: Rikard Bengtsson <rikard@loginhasselberg.se>
Date:   Fri Oct 6 03:15:05 2023 +0200

    Update n64.cpp

commit f4a6b98b5dd650bc13e08db8bb21e3da31fea64b
Author: Rikard Bengtsson <rikard@loginhasselberg.se>
Date:   Fri Oct 6 03:12:51 2023 +0200

    cleanup

commit 401b9dc6a9b2d0dd06c18be1e48014b3dc81e946
Author: Rikard Bengtsson <rikard@loginhasselberg.se>
Date:   Tue Oct 3 22:48:03 2023 +0200

    Clean-up

    Clean-up the code, added some comments. Allow uppercase md5s in the database.

commit e0e2affdfe277577820ba73a202b06311b645ec7
Author: Rikard Bengtsson <rikard@loginhasselberg.se>
Date:   Mon Oct 2 20:05:28 2023 +0200

    Cleaner code?

commit 554666832bd55d924b531f469a45cb7996f13e03
Author: Rikard Bengtsson <rikard@loginhasselberg.se>
Date:   Sun Oct 1 02:13:00 2023 +0200

    Delete N64-database.txt

    Delete before PR

commit 9e8fc3f30c36ea9de59d4f1801a4341edbf73eb8
Author: Rikard Bengtsson <rikard@loginhasselberg.se>
Date:   Sun Oct 1 02:09:07 2023 +0200

    Some commenting and clean-up

commit be19bb6e679cd76d32f9b0382c08052ba1e68944
Author: Rikard Bengtsson <rikard@loginhasselberg.se>
Date:   Sun Oct 1 01:19:05 2023 +0200

    Autodetect settings by ID

    Settings are saved in the database text files as usual, but you can match by both MD5 (first 4096), MD5 (full) as well as ID + region + revision.

* Added support for hacked boot codes
2023-10-07 02:36:57 +08:00
Rikard Bengtsson
ee5659ad9c N64: Find ROM settings in database by ID, region and revision (#830)
ID, region and revision are grabbed from the games' header and are looked up in the database text file, the same file where MD5 hashes are now. Both MD5 and ID will be valid ways of determining ROM settings, so old database files will still work. The benefit of this is that the database can be shrunk quite considerably, as many, many duplicates can be removed. It will be (much) easier to maintain. I'm hoping to see fewer pull request made to the database repository as a consequence of this change.
2023-10-01 19:56:12 +08:00
Marcoen Hirschberg
d53a998eac N64 joystick emulation (#828)
* input.cpp: pass dev nr to joy_analog

This allows for per-controller behavior

* N64: add emulation for the analog joystick

This applies the reduced-range octagonal gate of the N64 analog stick to
regular analog sticks.

The code was mostly written by Patrick Pollock with small optimizations
by Martin Donlon and myself.
2023-09-24 17:22:02 +08:00
Rikard Bengtsson
257e81ed32 Fix my previous pull request (#827)
Some users complained that some games weren't working anymore after my submission. The reason is that I always set save type to "none" when the game wasn't detected in the db. This reverts some of the old behavior, don't touch the save type and controller pak settings when these settings are unknown because of missing db.
2023-09-24 13:42:07 +08:00
Rikard Bengtsson
dc7fa8253f Always try to auto detect system region and CIC (#825)
* Auto detect system region, CIC, and save type if the ROM is missing from N64-database

Make it possible to to load games with correct settings even if they are missing from the database file.

* Removed auto-detection of save type

Only detect system region and cic type, use db for save type.

* Replace info texts with shorter variants

.
2023-09-23 21:38:22 +08:00
Sorgelig
be8a80346a saturn: some tweaks in CD loading. 2023-09-19 23:04:16 +08:00
Sorgelig
4211234cba Remove some old builds. 2023-09-15 18:59:51 +08:00
Sorgelig
0b87456f21 Release 20230915. 2023-09-15 18:55:53 +08:00
Marcoen Hirschberg
d98ae034e0 N64: also search in N64-database_user.txt for rom info (#821)
Having a 2nd user database has the advantage of allowing custom entries
without losing them every time when N64-database.txt is overwritten.
2023-09-15 15:07:59 +08:00
Sorgelig
a1c64c955c input: fix mapping. 2023-09-12 04:04:37 +08:00
Sorgelig
ce9daf6de9 input: make keyboard remap system-wide. 2023-09-12 02:55:36 +08:00
Sorgelig
f1cdcd5c46 input: improve keyboard remap dialog. 2023-09-10 14:41:00 +08:00
birdybro
791308d8d4 Update names.txt (#815) 2023-09-10 05:02:47 +08:00
Sorgelig
203c8a92c4 user_io: improved persistent file loading. Don't load boot.rom if user choose specific persistent file. 2023-09-10 00:55:40 +08:00
Sorgelig
1d36e3472f input: fix broken button skip in buttons definition. 2023-09-10 00:16:46 +08:00
zakk4223
698a849990 Don't close existing filehandle if it is the same as the 'new' one. (fixes ao486 reset issue) (#814) 2023-09-09 17:53:46 +08:00
Sorgelig
a218675ba3 Some improvements in build files. 2023-09-08 18:32:02 +08:00
Sorgelig
b613044f89 MGL: support for absolute paths. 2023-09-07 23:16:45 +08:00
Sorgelig
3bfadb39e8 input: make button/key remap permanent. 2023-09-07 22:09:54 +08:00
MikeS11
ed28dab2e5 YC.txt Update 20230906 (#812)
Added Megadrive, Added JTTMNT
2023-09-07 14:56:05 +08:00