Commit Graph

178 Commits

Author SHA1 Message Date
Lior Halphon 0ece21bca7 Replace the SDL-derived controller support with my own JoyKit framework. Adds rumble support, LED support, better manual and automatic configurations, analog speed controls. 2019-10-19 19:26:04 +03:00
Lior Halphon d2e9025be6 Fixed major performence issues in the Cocoa port that affected some Macs, especially when emulating SGB1 2019-07-19 23:59:25 +03:00
Lior Halphon f0809a667f Fixed a potential Cocoa crash when closing a window 2019-07-19 15:50:36 +03:00
Lior Halphon f1b578fd2e Update version to 0.12, update copyright year 2019-06-21 19:20:51 +03:00
Lior Halphon 72b1fe0500 Minor Fixes™ 2019-06-21 01:03:52 +03:00
Lior Halphon 280f609785 Fix under clock speed (Should have been 0.5, but ended up as ~0.4 due to rounding errors) 2019-06-19 22:25:59 +03:00
Lior Halphon e268efefef Redesign and reimplement the audio API, let the frontends handle more stuff. Probably affects #161 2019-06-15 23:22:27 +03:00
Lior Halphon b2397a2e7a Joystick hat support in Cocoa 2019-06-14 18:06:15 +03:00
Lior Halphon 5cda1f2f5f Fix the last commit 2019-06-08 00:04:58 +03:00
Lior Halphon d0bd741049 Added SCX/SCY display in the VRAM viewer. Closes #168 2019-06-07 23:38:34 +03:00
Lior Halphon 7fc3de69da Mark CGB-C as experimental 2019-06-07 18:40:54 +03:00
Lior Halphon c342663200 Emulate serial bit shifting, update the serial API to use bits instead of bytes, update printer emulation and libretro to use the new API 2019-03-15 14:36:10 +02:00
Lior Halphon 112a174f4a Proper window minimum size handling 2019-01-05 23:58:18 +02:00
Lior Halphon 21eb96a2f5 Joypad multiplayer support (Cocoa) 2018-12-15 18:55:41 +02:00
Lior Halphon e8dfc18d11 Multiplayer SGB support in Cocoa (Keyboard only) 2018-12-05 00:00:16 +02:00
Lior Halphon 241577a7f1 Merge branch 'master' into sgb 2018-12-02 00:15:07 +02:00
Lior Halphon b852add773 Minor refinements to the icon 2018-12-01 22:43:35 +02:00
Lior Halphon a1c39173dd SGB2 boot ROM 2018-12-01 17:28:57 +02:00
Lior Halphon cbbe3fe207 Revision selection 2018-12-01 17:16:50 +02:00
Lior Halphon 51b7780d83 Redesign the preferences window 2018-12-01 17:16:29 +02:00
Lior Halphon b3166135eb Clean up that crashing mess I made 2018-11-23 19:59:15 +02:00
Lior Halphon aaafd482cc Fixed Cocoa OpenGL regression, it was completely broken 2018-11-22 22:59:29 +02:00
Lior Halphon 6160f513aa CRT filter 2018-11-19 18:52:11 +02:00
Lior Halphon 634a54c046 SGB resolution support (Cocoa only so far) 2018-11-15 00:21:21 +02:00
Lior Halphon 44891d5c4a Initial code to support SGB, command “parsing”, replacement SGB boot ROM 2018-11-11 01:16:32 +02:00
Lior Halphon 9080a23913 Improved idle performance in the Cocoa port when using Metal 2018-10-11 18:43:31 +03:00
Lior Halphon 1b049b8f75 Fixing UI bugs in the Cocoa debugger. Console windows now display the ROM file name 2018-09-15 17:57:59 +03:00
Lior Halphon e5f4495ca0 Turns out the last Cocoa fix was neither reliable or actually working. 2018-07-11 19:48:54 +03:00
Lior Halphon dc4c23c0da Worked around a macOS bug where fullscreen-mode SameBoy would render garbage on High Sierra. Fixed titlebar color when using the ugly Yosemite theme. 2018-07-10 20:35:07 +03:00
Lior Halphon 32443a9675 Improved analog stick controls in both ports. Affects #34? 2018-06-26 19:36:14 +03:00
Lior Halphon 74abf61a08 Fixed a crash that happened when changing the rewind length in Cocoa 2018-06-23 11:50:08 +03:00
Lior Halphon 6b2c25475f Removed limitations around debugger output in the Cocoa frontend 2018-06-21 21:23:57 +03:00
Lior Halphon 0ffb936885 The Cocoa port now allows selecting a folder containing boot ROM files 2018-06-21 00:48:02 +03:00
Lior Halphon 70d68a500e Stop annoying exceptions in the preferences window 2018-06-17 23:24:02 +03:00
Lior Halphon a4bfb026a8 Fixed rounded corners in Metal 2018-06-17 23:16:34 +03:00
Lior Halphon ca9249d4db Prevent memory viewer errors on reset 2018-06-16 14:46:16 +03:00
Lior Halphon bc876ec30c Whoops 2018-06-16 14:36:06 +03:00
Lior Halphon 45c73e0175 Replaced the is_cgb bool with a more future compatible model enum. Removed the GB_init_cgb API and replaced it with an extended GB_init and GB_switch_model_and_reset APIs that now receive a model parameter. Increased the struct version. 2018-06-16 13:59:33 +03:00
Lior Halphon c286203640 Fixed potential black screen on Metal 2018-06-16 12:46:57 +03:00
Lior Halphon 968ff4879a Enable fast math 2018-06-16 00:08:24 +03:00
Lior Halphon 1c1cddb53e OpenGL fallback 2018-06-15 20:03:59 +03:00
Lior Halphon cd045fde15 Scaling filters in Metal 2018-06-15 19:11:06 +03:00
Lior Halphon 4466a55de6 Output resolution parameter 2018-06-15 18:44:22 +03:00
Lior Halphon c6dba26d02 Simplify shaders 2018-06-15 18:08:54 +03:00
Lior Halphon c1fcd1a0c0 Added frame blending 2018-06-15 13:58:50 +03:00
Lior Halphon 5b39cacc8a Basic Metal support. No OpenGL fallback, no shaders, no blending. 2018-06-15 13:26:53 +03:00
Lior Halphon 9a3d53ae51 Remove OpenGL specific code from GBView 2018-06-11 22:11:33 +03:00
Lior Halphon ba07e7ba85 Fixed a bug where 0:$dxxx reads/writes from the wrong bank in CGB mode. Made sure symbols are reset after reloading a sym file. 2018-04-02 19:57:39 +03:00
Lior Halphon 69a625af97
How did I miss this thing after over 2 years?! 2018-04-01 16:53:21 +03:00
Lior Halphon 7706b8727a Updated Cocoa copyright 2018-03-30 17:06:39 +03:00
Lior Halphon 6e8567eadc Silence some annoying Cocoa warnings, hopefully it won’t affect performance 2018-03-02 19:42:02 +02:00
Lior Halphon 3c8f3ad3fc Stop annoying beeps and exceptions 2018-03-02 19:37:40 +02:00
Lior Halphon d0202a3f9a Added LCD graphics filter; emulates low-resolution LCD artifacts 2018-02-17 20:43:48 +02:00
Lior Halphon afcc66fb3c Added CPU under/over-clocking support in Core, add under-clocking hotkey in the Cocoa port, allow modifier keys to be configured as input keys in Cocoa. 2018-02-10 23:30:30 +02:00
Lior Halphon 1c61b006ba Added rewinding support to the core and the Cocoa frontend 2018-02-10 14:42:14 +02:00
Lior Halphon 51eacd3174 Update version to 0.10.1, update copyright to 2018 2018-02-03 00:50:38 +02:00
Lior Halphon aeb9f0eda4 Prevent screensaver when using a joypad 2018-02-02 19:22:08 +02:00
Lior Halphon 69a712b07f Added AGB as a model option in Cocoa 2018-01-13 13:31:06 +02:00
Lior Halphon a4465b72e7 Clean up unneeded joystick code, joystick is now internally driven by callbacks (instead of polling) 2017-12-30 17:00:07 +02:00
Lior Halphon 8eeda02d50 Added Joypad support, closes #9 2017-12-30 16:23:17 +02:00
Lior Halphon d6236b87dd Fixed a crash in the OAM tab 2017-12-29 13:42:32 +02:00
Lior Halphon 595bb563f9 OmniScale is no longer beta 2017-12-29 13:35:03 +02:00
Lior Halphon bbd3b7e550 Got rid of -ICore 2017-10-13 00:02:02 +03:00
Lior Halphon 65dd02cc52 Added 3 color correction profiles, added color correction setting to Cocoa GUI, improved cross-platform and cross-frontend save-state compatibility 2017-10-12 17:22:22 +03:00
Lior Halphon 78446f0ed4 Fixed several memory leaks (mostly in Cocoa port debugging utils) 2017-09-27 22:09:26 +03:00
Lior Halphon 5d84ee250e Added Cocoa GUI for the High-Pass filter selection 2017-08-15 21:59:53 +03:00
Lior Halphon 81de2c3d9b Incremented version to 0.9, updated copyright 2017-05-27 19:41:09 +03:00
Lior Halphon f34103473e Fixed ^C not giving focus to the console window 2017-05-27 17:16:20 +03:00
Lior Halphon a69f0a64b1 Added reverse text search to the Cocoa console 2017-05-27 17:15:52 +03:00
Lior Halphon 6b2a302393 Terminal-style command history in the Cocoa debugger 2017-05-27 14:32:32 +03:00
Lior Halphon 44b414d45f Fixed VRAM window not showing correctly if opened while the game is paused 2017-05-27 12:52:31 +03:00
Lior Halphon 7d88ee00cc Added side view to Cocoa debugger 2017-05-26 20:16:19 +03:00
Lior Halphon fb55c35f87 New APIs, Document.m no longer requires GB_INTERNAL, fixed a bug where the sprite viewer showed incorrect sprites for some CGB exclusive games. 2017-04-19 23:26:39 +03:00
Lior Halphon 3feaeb153e New turbo related APIs, Quick Look no longer requires GB_INTERNAL 2017-04-19 21:55:58 +03:00
Lior Halphon a925ef130d Stabilizing API: New joypad, debugger and reset APIs; internal APIs and direct struct access are no longer available without defining GB_INTERNAL. The SDL port uses the new “public” APIs, as well as most of the non-debug Cocoa code. 2017-04-17 20:16:17 +03:00
Lior Halphon c116c70bfa Better GUI for user errors/warnings in Cocoa 2017-02-24 18:15:31 +02:00
Lior Halphon 3d99773ddb Changed how the Cocoa port initializes GB_gameboy_t 2017-02-24 15:14:00 +02:00
Lior Halphon b0dfb8c5ac Added built-in IO-Register symbols 2017-02-20 14:37:15 +02:00
Lior Halphon 6f94664428 Close Open Panels if a document is opened via other means 2017-01-24 23:10:50 +02:00
Lior Halphon a5f72627fe Cocoa key bindings now based on key codes 2017-01-24 21:00:56 +02:00
Lior Halphon 9779635c34 Added NSSupportsAutomaticGraphicsSwitching to Cocoa's Info.plist 2017-01-22 22:25:15 +02:00
Lior Halphon 0d8244748c Fixed icon alignment 2017-01-22 00:37:25 +02:00
Lior Halphon 8cd82ebb68 Quick Look icon generation for GameBoy ROMs, using screenshots from the actual ROMs 2017-01-20 18:35:20 +02:00
Lior Halphon 8d5bacf6ae Updated Cocoa cartridge icons 2017-01-20 18:16:45 +02:00
Lior Halphon 5dcc8e744e Fixed a crash in the Cocoa port that might happen after closing GameBoy Camera 2017-01-14 19:45:07 +02:00
Lior Halphon 613d3b2e82 Printer support in Cocoa 2017-01-13 22:26:44 +02:00
Lior Halphon 388fb600de Added VRAM-debugging APIs, added VRAM viewer to Cocoa Port, fixed uninitialized VRAM, fixed memory viewer crash 2016-10-27 00:23:24 +03:00
Lior Halphon 90b7383df7 The camera's get pixel callback must return the same value for every coordinate until a new photo is taken. 2016-10-03 23:05:47 +03:00
Lior Halphon b50b38c78a GameBoy Camera support in Cocoa 2016-10-03 00:26:12 +03:00
Lior Halphon 58a4081b48 Improved open performance in Cocoa 2016-10-02 00:10:31 +03:00
Lior Halphon 21b91adf6a Improved open-dialog behavior in Cocoa 2016-10-02 00:10:09 +03:00
Lior Halphon 4a2bec239a MBC2 RAM support was completely broken. 2016-09-30 23:34:06 +03:00
Lior Halphon 6e86dbcebb Cocoa port now shows the open dialog if no ROM is open. 2016-09-10 19:46:42 +03:00
Lior Halphon 7bafb6a843 Cocoa port: remember breakpoints and watchpoints after reset 2016-09-07 00:44:00 +03:00
Lior Halphon 62ecadeb57 Fixed another reset-while-debugging deadlock in Cocoa 2016-09-07 00:37:11 +03:00
Lior Halphon 92c2b22735 Cocoa port now remembers the mute switch 2016-08-21 21:58:33 +03:00
Lior Halphon 33da8734fe Mouse hiding is now only enabled during full screen mode 2016-08-21 00:38:26 +03:00
Lior Halphon 0734e990b3 Memory viewer now has a Goto command, different memory space modes, and allows viewing/editing specific banks 2016-08-19 14:54:54 +03:00
Lior Halphon f9236d12bf Improvements to the help command and general debugger usability. 2016-08-13 22:52:41 +03:00
Lior Halphon e79ddee705 Basic memory hex viewer/editor, using a (heavily stripped down) HexFiend framework 2016-08-13 00:58:52 +03:00