Commit graph

213 commits

Author SHA1 Message Date
tildearrow
183d78e2a1 update Nuked-OPM to latest version 2022-09-09 23:47:22 -05:00
tildearrow
68587dab0d update Nuked-OPN2 core 2022-09-09 23:44:08 -05:00
Christoph Neidahl
e08399156a
Haiku support (#596)
* Don't apply Wayland videodriver workaround on Haiku

* dirent.d_type-less type detecting in IGFD

The Dumb Way(tm). `stat`'s `st_mode` should be nicer?

* CMake check for dirent.d_type, stat-based fallback

* Move config dir setup to separate function

Nicer to work with than macro kerfuffle.

* Default sysFileDialog to off on Haiku

* Logging stuff

* Honour CMAKE_INSTALL_BINDIR

* Use find_directory on Haiku

Includes forgotten configPath line when home==NULL.

* Address PR review notes
2022-07-23 22:11:30 -05:00
tildearrow
3df5a6e2b6 issue #588, part 2 2022-07-14 22:17:05 -05:00
tildearrow
5f92a6ffa6 possibly fix major issue with NFD 2022-07-14 00:14:33 -05:00
tildearrow
1e2cafcf90 possibly fix system file picker filter on macOS 2022-07-01 14:07:55 -05:00
tildearrow
f03f6bdb8d possibly fix compilation under macOS? 2022-06-30 03:44:16 -05:00
tildearrow
4dfd413ead OPLL: fix per-channel osc, part 1 2022-06-29 01:32:52 -05:00
tildearrow
b04743d045 SMS: implement Game Gear stereo in Nuked core 2022-06-27 04:09:24 -05:00
tildearrow
5507fd9f33 fix Windows file picker filter not working at all 2022-06-27 03:23:13 -05:00
tildearrow
0c480a3ea7 go to hell
and your stupid mess of C++ with Smalltalk language
2022-06-24 13:39:50 -05:00
tildearrow
01d2971b40 oh wait 2022-06-24 13:29:01 -05:00
tildearrow
1ffca9bea2 can you do the inverse 2022-06-24 13:28:11 -05:00
tildearrow
3366099dbe can you call C++ methods from Smalltalk 2022-06-24 13:17:43 -05:00
tildearrow
deffd99503 pass filter to NFD - DOES NOT BUILD
I am so lazy to adapt the macOS part
2022-06-24 03:11:36 -05:00
tildearrow
abbd6e7274 potentially fix #550 2022-06-23 02:48:28 -05:00
tildearrow
35bc757adf GUI: fix macOS system file picker crash 2022-06-19 18:51:51 -05:00
tildearrow
9b71dae4d9 fix macOS build (hopefully) 2022-06-19 01:39:07 -05:00
tildearrow
52328df8c3 GUI: system file picker ins preview! (Windows) 2022-06-19 01:36:36 -05:00
tildearrow
03e31c441e prepare for ins preview in system file picker 2022-06-19 00:11:18 -05:00
tildearrow
39fa3d7d85 Merge branch 'master' into preset1 2022-06-17 20:40:09 -05:00
tildearrow
d5d381328b add modified version of Native File Dialog
it will replace portable-file-dialogs on Windows, and perhaps in
the rest of operating systems (maybe not Linux) as well.
2022-06-17 00:02:29 -05:00
cam900
0c1a8bc001 Merge branch 'master' into preset1 2022-06-17 09:19:17 +09:00
tildearrow
64f5343289 I give up trying to fix this file dialog
for now
2022-06-15 02:03:20 -05:00
cam900
e0e6a45000 Prepare for reducing duplicates for 4op FM related codes, Add and correct bunch of presets, Add various clock, type options for chips
Prepare for reducing duplicates for 4op FM related codes

Add and correct bunch of presets
- mostly based on MAME source.
- Neo Geo AES uses slightly difference clock for NTSC, PAL colorbust frequency.
- Turbosound FM + SAA: Some Turbosound FM has additional SAA1099, for additional sound channel and Plays SAM coupe tune?
- PC-98:
 - Sound Orchestra: OPN with hardpanned stereo, some model has with OPL family FM addons.
   V variation has Y8950 and supports ADPCM.
 - Sound Blaster 16 for PC-9800: This famous PC sound card is also exists for PC-98, with optional OPN PC-9801-26(K) compatibility on some models.
- IBM PCjr: PC with SN PSG sound, but less popular than previous models, and compatible Tandy 1000.
- Tandy 1000: PCjr and previous IBM PC compatible, also has SN PSG (later embedded in their ASIC, like Sega).
- Hexion: One of konami's budget arcade hardware with SCC + MSM6295 sound system, like their amusement hardware in this era.
- DJ Boy, Atari JSA IIIs, Skimaxx: How to panning sound or plays stereo sound on MSM6295 - just use MSM6295s per each output!
- Air Buster: One of arcade hardware with OPN + MSM6295 sound system, Used this configuration is also some hardwares.
- Tecmo system: One of arcade hardware with pretty unique sound system: OPL3, YMZ280B, MSM6295; first 2 entry is mostly used in music, last entry is mostly used in sound effect.
- Sunsoft Shanghai 3: Predecessor of Sunsoft Arcade is using YM2149 rather than FM, MSM6295 is still there.
- Atari Klax: example of arcade hardware sound system with single MSM6295 only.
- Ikari warriors: This early SNK Triple-Z80 hardware uses 2 OPL1s and no ADPCM supports.
- Coreland Cyber Tank: This rare arcade machine's stereo sound is like SB Pro, but it's actually produced in 2 Y8950s.
- Data East MLC: Latest arcade hardware from Data East, with single YMZ280B for sound.
- Kaneko Jackie Chan: Predecessor of Super Kaneko Nova System hardware, also with YMZ280B.
- Super Kaneko Nova System: Latest arcade hardware from Kaneko, with single YMZ280B for sound. this announced 3D acceleration addon, but finally cancelled.
- Toaplan 1: Home of Late 80-Early 90s Good ol' stuffs, Example of arcade sound system with single OPL2
- Namco Pac-Land: and this era, Namco start to change Custom 15 WSG to their Custom 30 WSG with featured RAM based waveform, and mailbox feature.
- Namco System 1: One of latest usage of Custom 30 WSG, with OPM FM hardware and 8 bit DAC and Stereo output.

Add various clock, type options for chips
- SN7: Prepare to add 17 bit noise variation, Game gear stereo extentsion, NCR PSG variation (MAME core only for now)
- OPN, OPNA: Add placeholder for prescaler option
- OPL: Prepare for OPL3L, OPL4 downscaled output rate option
2022-06-06 19:04:52 +09:00
cam900
fb9ab893fa Add ImVector fill function 2022-06-02 01:17:21 +09:00
tildearrow
050a98d63d Revert "ssize_t instead of size_t - #510"
This reverts commit 07486bb3c8.
2022-05-31 15:31:21 -05:00
tildearrow
07486bb3c8 ssize_t instead of size_t - #510 2022-05-31 13:45:14 -05:00
tildearrow
b0b07dc516 the real 2022-05-31 12:47:45 -05:00
tildearrow
74dcf69081 pass --with-our-malloc on MinGW 2022-05-31 12:42:47 -05:00
tildearrow
2d5c72148f fix everything 2022-05-31 12:01:30 -05:00
tildearrow
54e93db207 GUI: try using FFTW for per-chan osc wave center
not reliable yet
2022-05-31 03:24:29 -05:00
cam900
8cd2ad5c12 Fix possible issue in horizontal scroll 2022-05-31 10:11:39 +09:00
cam900
35d56ac5d6
Fix typecasting 2022-05-30 22:00:38 +09:00
tildearrow
539f96542f work around #502
@cam900 please revert this one before attempting to diagnose the issue.
2022-05-29 23:37:10 -05:00
tildearrow
957e35af0b finally 2022-05-29 00:48:19 -05:00
tildearrow
7687a64000 Revert "fire!"
This reverts commit 7baf1d471f.
2022-05-29 00:44:17 -05:00
tildearrow
7baf1d471f fire! 2022-05-29 00:04:33 -05:00
tildearrow
43908e5277 prepare for better backward writing 2022-05-28 22:45:59 -05:00
tildearrow
efaca3b094
Merge pull request #496 from cam900/largecolumns_alt
Allow more than 64 columns in Dear ImGUI (patched)
2022-05-27 00:19:21 -05:00
tildearrow
061b312943 SMS: volume table is now non-float 2022-05-26 23:46:42 -05:00
cam900
67a7f39d9a Allow more than 64 columns in Dear ImGUI (patched)
Improves Channel window displays, with System info.
2022-05-27 13:38:45 +09:00
tildearrow
905aa1b1a1 SMS: add TI PSG volume table 2022-05-26 23:19:27 -05:00
tildearrow
0577aa3569 SMS: early Nuked-PSG modding 2022-05-26 19:00:14 -05:00
tildearrow
e3ebe0cb92 SMS: add modified Nuked-PSG core 2022-05-26 18:46:20 -05:00
tildearrow
051cd6e966 fix another fucking IGFD crash bug 2022-05-25 00:10:01 -05:00
tildearrow
0292f4d4c3 temporarily "fix" MinGW issue 2022-05-24 22:15:43 -05:00
tildearrow
3a1b66957b and finally add crash file output 2022-05-24 13:23:23 -05:00
tildearrow
914b5f7a88 experiment with backward-cpp again 2022-05-24 13:06:29 -05:00
tildearrow
3932a82d14 GUI: add frame shading setting 2022-05-24 03:49:52 -05:00
tildearrow
8dde6a604e add rounding to AddRectFilledMultiColor 2022-05-24 03:30:27 -05:00
tildearrow
d490746325 GUI: finish lock layout 2022-05-24 02:38:10 -05:00
tildearrow
7383a44f00 temporary workaround for ImGui issue 2022-05-19 00:28:58 -05:00
tildearrow
e1bd5b03f3 de-submodule ImGui
allows for local modification which is necessary

see #442
2022-05-18 15:23:10 -05:00
tildearrow
20bdaa4702 update SDL and ImGui - PLEASE READ!
DO THE FOLLOWING COMMANDS AFTER PULLING THIS COMMIT:
```
git submodule update --remote extern/SDL
git submodule update --remote extern/imgui
```

OTHERWISE THINGS MAY BREAK
2022-05-18 14:31:29 -05:00
OPNA2608
3d00e1d784 Fix WIN32 define timing in IGFD
When the compiler hits IGFD, WIN32 is only set if standard extensions are enabled. (Why?)
IGFD identifies Windows via WIN32 instead of _WIN32. (Why?)

- WIN32 is needed for #ifdef-gated Windows-specific methods in the header & code files.
  - There's fallback code in the code file to set WIN32 if _WIN32 or __WIN32__ is set.
    - Which is hit *after* the header gets included, so the header doesn't expose required methods.
      -> Boom, error!

Workaround by moving the fallback into the header.
2022-05-08 00:34:20 +02:00
OPNA2608
58fc35227e Fix outdated calling convention in SAASound (maybe fix MinGW)
https://docs.microsoft.com/en-us/cpp/cpp/stdcall?view=msvc-170

> For compatibility with previous versions, _stdcall is a synonym for __stdcall
> unless compiler option /Za (Disable language extensions) is specified.
2022-05-07 23:31:42 +02:00
tildearrow
b75336bcb6 OPL: fix channel muting - PLEASE READ!
**SUBMODULES UPDATED** - Nuked-OPL3 is no longer a submodule as I
had to directly modify the core for this
if you mess up while removing Nuked-OPL3 from your repo, delete
everything and clone again

fixes #414
2022-05-04 18:06:32 -05:00
tildearrow
e873070d84 now move these files 2022-05-01 22:22:02 -05:00
tildearrow
867f96ff01 add readme 2022-05-01 22:19:00 -05:00
tildearrow
f6fe93b0ed convertir de Shift-JIS a UTF-8
por eso es que no deseaba aceptar el uso de NSFplay
2022-05-01 22:13:11 -05:00
djmaximum17
6c517292dd Add files via upload 2022-05-01 22:00:52 -05:00
Laurens Holst
4d8f86a27c Fix horizontal scroll direction on macOS.
See open Dear ImGUI issue:
https://github.com/ocornut/imgui/issues/4019

This patches it for macOS in the local copy of imgui_impl_sdl.
2022-05-01 17:25:27 +02:00
tildearrow
c0e9b48b5b per-channel oscilloscope, part 5
SAA1099 (SAASound and MAME), Lynx, MMC5, N163, PC Engine, PC Speaker,
PET, QSound, WonderSwan, VERA, VIC-20, VRC6 and X1-010!
2022-05-01 02:40:03 -05:00
tildearrow
e1fd16637c per-channel oscilloscope, part 4
OPM, OPN2, OPLL and SN
plus hide unimplemented channels
2022-04-30 22:59:26 -05:00
tildearrow
e8c9b645c5 GUI: implement instrument preview in file dialog
SADLY it's just for the built-in file dialog
but i'll think of a solution for the external one
2022-04-25 18:58:17 -05:00
tildearrow
4d6fe8f0ea get rid of backward
thanks for the waste of time
2022-04-18 03:15:39 -05:00
tildearrow
744c5982e1 bring on backward-cpp
cross your fingers
2022-04-18 01:31:03 -05:00
tildearrow
9e0e725802 Sorry but I think I'd like to go now. 2022-04-11 00:12:24 -05:00
tildearrow
552967246d **SUBMODULE UPDATE - PLEASE READ!**
as of now I have added the Date library as a submodule in order to have
log messages in the correct time zone

please update your submodules by doing:
```
git submodule update --init --recursive
```
2022-04-10 23:01:55 -05:00
OPNA2608
d5b07aa347 Move icon_enum_callback to separate function 2022-04-09 13:32:40 +02:00
OPNA2608
194ba95633 Fix C4229
Move calling convention modifier for icon callback lambda in pfd, MSVC wasn't quite happy with this.
2022-04-09 11:23:19 +02:00
OPNA2608
54a36c4950 Fix SDL static linking 2022-04-08 20:16:42 +02:00
OPNA2608
8a6dfa8d19 pfd: Fixes for MinGW 10 2022-04-08 20:16:42 +02:00
OPNA2608
5b95cf9db9 Add new CI job to prepare for artifact uploads 2022-04-08 20:16:42 +02:00
tildearrow
0874d58fb8 damn it 2022-03-13 22:02:50 -05:00
tildearrow
2ba0185701 well that didn't last long 2022-03-13 21:46:52 -05:00
tildearrow
5e77b47467 system file picker anyone? DO NOT COMPILE! 2022-03-13 18:32:35 -05:00
tildearrow
6bca347254 maybe BUG 2022-03-13 17:29:43 -05:00
tildearrow
8bda9df487 prepare for OPL systems 2022-03-05 16:06:41 -05:00
tildearrow
b90fb02e63 OPLL: 99.9%
all features usable, except for custom patchsets (not sure how am i
gonna implement it)
2022-03-01 23:07:29 -05:00
tildearrow
bd9289cfdd store OP macros
todo
2022-02-28 18:16:05 -05:00
tildearrow
3362289e3a fix build 2022-02-25 04:38:54 -05:00
tildearrow
37f850c6c4 prepare for OPLL system - DOES NOT WORK 2022-02-25 04:26:01 -05:00
tildearrow
1e98f0c4a1 sample system rewrite! **PLEASE READ**
this commit mostly rewrites the sample system.
as of now samples can be ADPCM, 8-bit, BRR or 16-bit
or something...

consider this VERY EXPERIMENTAL.
if you find any issues REPORT THEM immediately.

it's nearly 4am...
2022-02-24 03:57:45 -05:00
tildearrow
ef0e19413c ok so fix the file dialog 2022-02-22 22:41:37 -05:00
tildearrow
4122238a4a aaaaaaaaaaaaa 2022-02-22 21:54:25 -05:00
tildearrow
d78efda9e9 3.5 2022-02-20 17:57:28 -05:00
tildearrow
d0b236ca9e fix Windows build
how did CI let this through?!
2022-02-17 04:33:19 -05:00
tildearrow
91579e09eb GUI: don't abort on font load failure
paving the way for custom fonts
2022-02-14 18:00:04 -05:00
tildearrow
2f766553e8 add SAASound as an alternate SAA1099 core
DOES NOT WORK YET
2022-02-13 17:02:49 -05:00
tildearrow
aa0e318543 add RtMidi for eventual MIDI support 2022-02-13 15:02:43 -05:00
tildearrow
fa5a732b68 GUI: extensions no longer case-sensitive
fixes #154
2022-02-08 23:13:54 -05:00
tildearrow
211208ed53 GUI: fix UI scaling on macOS
required patching ImGui D:
but hey, it mostly works! issue #35
2022-02-08 02:04:23 -05:00
tildearrow
a3beab6815 **UPDATE SUBMODULES** - PLEASE READ
i've updated the submodules. this should make ImGui work on Wayland
again (apparently).

please make sure to do `git submodule update --init --recursive`.
2022-02-07 22:09:20 -05:00
tildearrow
ba08d3515f GUI: fix several file dialog bugs
damn it
2022-02-01 02:52:36 -05:00
tildearrow
82d8728ca1 force minimum size on file picker 2022-01-31 15:03:10 -05:00
tildearrow
352441449d fix not able to enter dirs with non-Latin chars 2022-01-30 23:30:13 -05:00
tildearrow
06dfb7e803 dirent: use custom UTF-16 to UTF-8 converter
see issue #22
files/dirs with non-Latin chars are displayed after this commit
they still do not load though, but a fix is guaranteed
2022-01-20 04:52:20 -05:00
tildearrow
797ffd62da GUI: center file picker and limit to win size 2022-01-20 00:31:36 -05:00
tildearrow
f32f079ef8 fix more crashes on the file dialog
oh yes, the wonders of dealing with this useless broken file dialog.
honestly I didn't think it was broken to this point...

and no, I don't want to use the **other** file dialog as it requires
C++17 which is too ahead of time
2022-01-19 15:03:33 -05:00
tildearrow
32cdeb108f update two submodules 2022-01-18 21:51:58 -05:00
tildearrow
84f36a8c66 icon fonttttttt 2021-12-21 00:30:55 -05:00
tildearrow
2ea2faf9c0 make the file dialog undockable 2021-12-17 00:26:33 -05:00
tildearrow
7a70ccfe2e use docking branch 2021-12-13 20:55:40 -05:00
tildearrow
2f813c55e0 GUI: instrument selector 2021-12-11 16:44:02 -05:00
tildearrow
e8ac2947ab prepare for the GUI! 2021-12-11 02:10:09 -05:00
tildearrow
b358338613 arcade: minor optimization 2021-12-09 01:03:05 -05:00
tildearrow
137258c269 update SDL to prepare for MinGW 2021-12-07 13:31:02 -05:00
tildearrow
f71ee6b45d preliminary audio file output 2021-12-07 12:21:23 -05:00
tildearrow
26fac3862b add nuked OPM for eventual arcade platform... 2021-12-06 16:57:39 -05:00
tildearrow
2d3580a05c fix windows build for once 2021-05-28 15:25:55 -05:00
tildearrow
062a9837c0 G E N E S I S
without SN
2021-05-12 17:19:18 -05:00