Lior Halphon
|
3864ff37e1
|
Timing improvements
|
2020-02-24 00:32:47 +02:00 |
|
Lior Halphon
|
c22611c701
|
Minor bugfix
|
2020-02-23 23:48:08 +02:00 |
|
Lior Halphon
|
c0ba898ef2
|
Basic window implementation
|
2020-02-23 23:16:45 +02:00 |
|
Lior Halphon
|
2be58439bf
|
Starting over – removing all window related code
|
2020-02-23 00:38:47 +02:00 |
|
Lior Halphon
|
d8282fe3c9
|
Please pretend the last commit never happened
|
2020-02-22 00:45:52 +02:00 |
|
Lior Halphon
|
39b88d546b
|
The upper bits of SCX might mid-line
|
2020-02-21 21:59:03 +02:00 |
|
Lior Halphon
|
ea2f32b255
|
The fetcher state machine advances even while handling an object
|
2020-02-21 21:44:44 +02:00 |
|
Lior Halphon
|
f86e682d2c
|
Fix sign
|
2020-02-21 17:22:57 +02:00 |
|
Lior Halphon
|
8409d3bcfb
|
Emulate changing sprite height mid-fetch
|
2020-02-21 16:43:51 +02:00 |
|
Lior Halphon
|
7d51ba3d97
|
More fixes, SGB emulation of the same quirk
|
2020-02-21 16:16:02 +02:00 |
|
Lior Halphon
|
91404edd13
|
Disgusting hacks to emulate disabling objects while an object is being fetched
|
2020-02-21 15:14:33 +02:00 |
|
Lior Halphon
|
56118d2a67
|
Move improvements to LCDC conflicts
|
2020-02-21 14:22:25 +02:00 |
|
Lior Halphon
|
a8f63aea3c
|
Emulate DMG LCDC write conflicts correctly. This might vary between individual units.
|
2020-02-21 02:55:07 +02:00 |
|
Lior Halphon
|
0290e70445
|
Improvements to AGB color correction
|
2020-02-17 23:05:11 +02:00 |
|
Lior Halphon
|
bec09a012c
|
More accurate emulation of STOP mode
|
2020-02-15 19:21:43 +02:00 |
|
Lior Halphon
|
08eb2f3d98
|
Correct emulation of FF6C (Turns out it controls object priority)
|
2020-02-15 15:32:06 +02:00 |
|
Lior Halphon
|
f550360f1a
|
More accurate CGB color correction curve
|
2020-02-15 13:21:21 +02:00 |
|
Lior Halphon
|
8b7805b95d
|
Hit ^T
|
2020-02-10 20:19:37 +02:00 |
|
Lior Halphon
|
804b9bec63
|
Fixed a bug where HDMA begins in the middle of an instruction while cycles are pending to be flushed. Fixes #230
|
2020-02-10 00:21:33 +02:00 |
|
Lior Halphon
|
103caa56e1
|
Allow displaying borders outside of SGB emulation, including borrowing SGB border. Allow not displaying SGB borders. (Todo: libretro support)
|
2020-02-08 13:28:46 +02:00 |
|
Lior Halphon
|
b806ae4e82
|
Fix #228
|
2020-02-01 23:36:16 +02:00 |
|
Lior Halphon
|
38ee020653
|
Fixed a regression bug that made the first CGB frame blank instead of repeated.
|
2020-01-31 01:29:59 +02:00 |
|
Lior Halphon
|
48d3504de7
|
Let the core handle boot ROM selection
|
2020-01-29 20:29:30 +02:00 |
|
Lior Halphon
|
163a5ea20c
|
Add DMG color palettes (Cocoa)
|
2020-01-29 14:19:11 +02:00 |
|
Lior Halphon
|
0737655753
|
Merge branch 'master' into JoyKit
|
2020-01-03 23:42:25 +02:00 |
|
Lior Halphon
|
95af00a752
|
speling is veri difikult
|
2020-01-03 21:11:45 +02:00 |
|
Lior Halphon
|
bd9ac204c2
|
Allow SameBoy to compile on 4-byte-bools platforms
|
2019-11-20 22:40:03 +02:00 |
|
Lior Halphon
|
31609319de
|
Fix the set_joyp API
|
2019-11-09 14:45:38 +02:00 |
|
Lior Halphon
|
c802361800
|
Whoops, this function was missing
|
2019-11-08 16:14:16 +02:00 |
|
Lior Halphon
|
143e1f88a8
|
There’s not reason it must be an integer
|
2019-11-03 22:02:33 +02:00 |
|
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
|
dee29c118c
|
Added GB_set_sample_rate_by_clocks API, split SGB_NO_SFC into PAL and NTSC; now they report the correct clock rate.
|
2019-10-08 15:10:24 +03:00 |
|
Lior Halphon
|
ca370eee7e
|
A bit more accurate AGB audio rendering
|
2019-10-01 18:50:59 +03:00 |
|
Lior Halphon
|
ac418b9de1
|
Pass channel_1_freq_change_timing
|
2019-09-30 00:09:25 +03:00 |
|
Lior Halphon
|
652e52df3d
|
Pass the SGB multiplayer tests
|
2019-09-14 12:31:52 +03:00 |
|
Lior Halphon
|
851dbd3ccd
|
SGB and AGB color correction
|
2019-09-13 17:13:21 +03:00 |
|
Lior Halphon
|
4fcc921b46
|
Fix SGB multiplayer, improve multiplayer accuracy
|
2019-09-13 17:10:58 +03:00 |
|
Lior Halphon
|
eaa1c1cd4a
|
Merge bsnes’s changes
|
2019-08-16 17:38:43 +03:00 |
|
Lior Halphon
|
e3672e8293
|
Emulate built in SGB palettes
|
2019-07-20 16:10:24 +03:00 |
|
Lior Halphon
|
8c1f76a594
|
Fix HLE SGB
|
2019-07-19 20:37:58 +03:00 |
|
Lior Halphon
|
ffb9f1b134
|
Fix HLE SGB
|
2019-07-19 20:34:26 +03:00 |
|
Lior Halphon
|
e634019ac9
|
Fix CGB emulation
|
2019-07-19 20:27:53 +03:00 |
|
Lior Halphon
|
4f9c8e9374
|
Match the HLE timings to the LLE timings
|
2019-07-19 20:19:09 +03:00 |
|
Lior Halphon
|
ea7dec4e88
|
Merge branch 'master' into bsnes_integration
|
2019-07-19 15:51:10 +03:00 |
|
Lior Halphon
|
33198fc7b7
|
Give SGB its own conflict map
|
2019-07-19 15:50:49 +03:00 |
|
Lior Halphon
|
df7f7d8171
|
Fix silly desync inaccuracy
|
2019-07-18 22:55:11 +03:00 |
|
Lior Halphon
|
772289c545
|
Fix a silly bug
|
2019-07-18 00:53:11 +03:00 |
|
Lior Halphon
|
9efd20d7cd
|
Revert "Silence some GCC warnings"
This reverts commit 11a9f1df21 .
|
2019-07-16 23:33:07 +03:00 |
|
Lior Halphon
|
11a9f1df21
|
Silence some GCC warnings
|
2019-07-16 23:27:35 +03:00 |
|
Lior Halphon
|
9ba6915c85
|
ICD JOYP write API
|
2019-07-16 21:42:57 +03:00 |
|
Lior Halphon
|
2d7f54a775
|
Load ROM from buffer API
|
2019-07-16 21:04:29 +03:00 |
|
Lior Halphon
|
ce9ce07817
|
Make the ICD APIs pixel based
|
2019-07-16 20:44:27 +03:00 |
|
Lior Halphon
|
346e499602
|
ICD APIs
|
2019-07-15 23:02:58 +03:00 |
|
Lior Halphon
|
e1873ad2ec
|
Add JOYP write callback API
|
2019-07-15 22:35:21 +03:00 |
|
Lior Halphon
|
2bfe922650
|
Allow emulating an SGB without SFC HLE
|
2019-07-15 20:47:16 +03:00 |
|
Lior Halphon
|
9f7255cd23
|
Make the automation results more consistent across revisions, and making use of this change as a chance to add color correction to the automation
|
2019-07-13 20:29:11 +03:00 |
|
Lior Halphon
|
8c8d5afe62
|
Make the debugger compatible with more sym formats
|
2019-07-13 17:17:55 +03:00 |
|
Lior Halphon
|
f55c254959
|
Fixed a regression that made ly_lyc_0_write and ly_lyc_write fail
|
2019-07-12 02:18:25 +03:00 |
|
Lior Halphon
|
4541efe86a
|
Fixed a bug that prevented writing to the wave RAM, as well as a bug where the wave RAM was treated as zeros despite not being zero’d out
|
2019-06-29 14:03:42 +03:00 |
|
Lior Halphon
|
36a87f96bd
|
Formatting
|
2019-06-21 16:58:56 +03:00 |
|
Lior Halphon
|
24b58da8c6
|
Minor text change
|
2019-06-21 14:18:48 +03:00 |
|
Lior Halphon
|
7c61445fe3
|
Fixed out of bound read in GB_load_state_from_buffer. Closes #104
|
2019-06-21 03:04:38 +03:00 |
|
Lior Halphon
|
72b1fe0500
|
Minor Fixes™
|
2019-06-21 01:03:52 +03:00 |
|
Lior Halphon
|
50a6a3e35c
|
Fix libretro SGB1 FPS, fix un/serialization memory corruptions in libretro
|
2019-06-19 23:49:43 +03:00 |
|
Lior Halphon
|
91b0e491c5
|
Increase the minimum required cycles for a sync, fix SGB jingle audio
|
2019-06-19 22:44:54 +03:00 |
|
Lior Halphon
|
431f1f8199
|
Remove redundant calls to display_vblank on non-SGB models and in irregular FPS scenarios. Affects #161
|
2019-06-18 23:16:28 +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
|
8b7922b679
|
Fix #144 by ignored malformed commands with 0 length
|
2019-06-15 03:42:53 +03:00 |
|
Lior Halphon
|
66b814a226
|
Don’t use libc’s random/rand
|
2019-06-14 16:49:41 +03:00 |
|
Lior Halphon
|
843683a492
|
Randomize everything!
|
2019-06-09 18:14:32 +03:00 |
|
Lior Halphon
|
49d8a5cb44
|
Fixed the parsing of comparison operators as well as their priorities. Fixes #155
|
2019-06-08 16:08:07 +03:00 |
|
Lior Halphon
|
0da2930109
|
Fix #175
|
2019-06-08 14:35:52 +03:00 |
|
Lior Halphon
|
274760746e
|
Fix #165
|
2019-06-07 19:18:07 +03:00 |
|
Lior Halphon
|
9d8adbb581
|
This is not correct, this bug only affects the PCM registers and not actual output. Currently not emulated at all.
|
2019-06-07 18:37:19 +03:00 |
|
Lior Halphon
|
2f9de4942c
|
Increase input polling frequency in the Cocoa and SDL frontends, should make inputs look less synthetic and potentially reduce input lag
|
2019-06-07 18:27:25 +03:00 |
|
Lior Halphon
|
64879f5b02
|
Accurate emulation of (most aspects of) stop mode
|
2019-06-07 13:53:50 +03:00 |
|
Lior Halphon
|
4c34e0a6e0
|
Turns out the AGB inverts Channel 3’s output
|
2019-06-01 18:22:58 +03:00 |
|
Lior Halphon
|
6888047102
|
Show flags in the registers command
|
2019-06-01 16:42:17 +03:00 |
|
Lior Halphon
|
cdc36f329e
|
Added open dialog to the SDL GUI, misc fixes
|
2019-06-01 14:29:46 +03:00 |
|
Lior Halphon
|
1de34b12ac
|
Merge pull request #181 from ISSOtm/master
Fix sample lengths for CH1, 2 and 4
|
2019-05-25 21:09:47 +03:00 |
|
Lior Halphon
|
85c43fa81f
|
Fixed Channel 3’s first sample behavior, update analog characteristic to more realistic values. Fixes #177
|
2019-05-25 19:12:09 +03:00 |
|
Lior Halphon
|
3e724afb0a
|
Basic SGB support in the SDL port
|
2019-05-18 18:45:31 +03:00 |
|
ISSOtm
|
ec5d1b7b88
|
Fix sample lengths for CH1, 2 and 4
|
2019-05-18 03:01:20 +02:00 |
|
Lior Halphon
|
3ee2c64899
|
Make the apu command a bit safer
|
2019-05-17 22:03:23 +03:00 |
|
Lior Halphon
|
6648a0a84d
|
Minor adjustments and style fixes to the new APU debug functions
|
2019-05-17 20:48:49 +03:00 |
|
Lior Halphon
|
280467ad38
|
Merge branch 'master' into master
|
2019-05-17 20:31:52 +03:00 |
|
Lior Halphon
|
91eeb4d9d5
|
Emulate AGB audio mixing
|
2019-05-17 00:08:34 +03:00 |
|
ISSOtm
|
40f83c8f25
|
Add APU-related debugger commands
This change includes making one of the APU functions public
|
2019-05-15 12:45:51 +02:00 |
|
Lior Halphon
|
ddc4e7484b
|
Fix and restore optimization
|
2019-05-10 22:29:30 +03:00 |
|
Lior Halphon
|
06670fc970
|
Fix #172. Allow unroll optimizations when compiling with GCC.
|
2019-05-10 21:51:11 +03:00 |
|
orbea
|
2bded45397
|
Disable pragmas for gcc.
|
2019-05-09 10:55:31 -07:00 |
|
Lior Halphon
|
82ce597573
|
Line breaks
|
2019-04-12 20:30:02 +03:00 |
|
Lior Halphon
|
05cd81b77c
|
Implemented jump-to breakpoints
|
2019-04-12 20:29:43 +03:00 |
|
Lior Halphon
|
7242ddae64
|
speling is difikult
|
2019-03-16 20:56:22 +02: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
|
0b03b61564
|
Render the first line 0, as required for SGB emulation
|
2019-02-16 04:19:16 +02:00 |
|
Lior Halphon
|
9d0aadb83f
|
Emulate missing Vreset signal (SGB only for now) and ICD2 desyncing
|
2019-02-15 17:04:48 +02:00 |
|
Lior Halphon
|
dde06e7cae
|
Work around a crashing race condition, proper fix needed
|
2019-01-28 20:56:37 +02:00 |
|
Lior Halphon
|
b996ed9220
|
Writing to BGPD/OBPD while it’s blocked still increases BGPI/OBPI if needed. Fixes #145
|
2019-01-19 23:37:44 +02:00 |
|
Lior Halphon
|
73a54049d2
|
Accurate PPU access timings
|
2019-01-19 19:32:26 +02:00 |
|
Lior Halphon
|
4536581a6e
|
Fixed a bug where modifying RTC data would corrupt cartridge RAM data. Fixes #136
|
2019-01-18 02:36:14 +02:00 |
|
Lior Halphon
|
312478e509
|
CGB palettes are not accessible during Mode 3, closes #84
|
2019-01-14 22:22:46 +02:00 |
|
Lior Halphon
|
879d3b607d
|
Removed verified TODO
|
2019-01-14 20:32:52 +02:00 |
|
Lior Halphon
|
ba5c07bed9
|
Correctly emulate speed switch timing
|
2019-01-13 01:09:41 +02:00 |
|
Lior Halphon
|
c74b39e712
|
The CPU core of the Game Boy is (most likely) called SM83
|
2019-01-12 00:42:16 +02:00 |
|
Lior Halphon
|
21d2a59a5f
|
Fixed a very rare edge case where an interrupt occurs when SP=FF11
|
2019-01-12 00:39:24 +02:00 |
|
Lior Halphon
|
4e2b5bb336
|
Fix the GB_run_frame API in SGB mode
|
2019-01-11 21:53:21 +02:00 |
|
Lior Halphon
|
7b36ee10a4
|
Merge branch 'master' into sgb
|
2019-01-05 19:00:22 +02:00 |
|
Lior Halphon
|
ae959cd878
|
ATTR_LIN and ATTR_DIV
|
2019-01-05 18:59:50 +02:00 |
|
Lior Halphon
|
4051f190a5
|
Cache cycles_per_sample to avoid FP arithmetic
|
2019-01-01 00:42:40 +02:00 |
|
Lior Halphon
|
9d947c7ce6
|
Unroll some APU loops
|
2018-12-31 23:09:56 +02:00 |
|
Lior Halphon
|
af0430dbc5
|
Unroll some loops in PPU code, more efficient timer handling
|
2018-12-31 22:06:20 +02:00 |
|
Lior Halphon
|
21eb96a2f5
|
Joypad multiplayer support (Cocoa)
|
2018-12-15 18:55:41 +02:00 |
|
Lior Halphon
|
612cd07fb3
|
Fixed emulation of echo RAM
|
2018-12-12 23:44:00 +02:00 |
|
Lior Halphon
|
ea09dfc888
|
Fixed multiplayer SGB mode
|
2018-12-04 23:46:30 +02:00 |
|
Lior Halphon
|
b1a2e45168
|
Improvements to the SGB animation
|
2018-12-01 13:39:43 +02:00 |
|
Lior Halphon
|
6d28e74667
|
Color 0 must always be shared
|
2018-11-24 15:53:53 +02:00 |
|
Lior Halphon
|
4b93f89763
|
Correct emulation of color masks
|
2018-11-24 15:42:54 +02:00 |
|
Lior Halphon
|
389d8ae045
|
Halt the CPU while the SGB animation is playing
|
2018-11-24 13:34:07 +02:00 |
|
Lior Halphon
|
2d6d1e6325
|
SGB boot animation
|
2018-11-24 13:21:00 +02:00 |
|
Lior Halphon
|
b3166135eb
|
Clean up that crashing mess I made
|
2018-11-23 19:59:15 +02:00 |
|
Lior Halphon
|
558f9b9bae
|
Updated SGB border, add “2” to SGB2
|
2018-11-23 14:16:48 +02:00 |
|
Lior Halphon
|
67d52b78b6
|
Handling interrupted SGB commands
|
2018-11-17 12:26:07 +02:00 |
|
Lior Halphon
|
af5ef50cf9
|
Fixing default border
|
2018-11-17 01:39:38 +02:00 |
|
Lior Halphon
|
deb5e21842
|
More colorization commands
|
2018-11-17 00:44:18 +02:00 |
|
Lior Halphon
|
b698ce5d95
|
Correctly emulate SGB border color 0
|
2018-11-17 00:44:07 +02:00 |
|
Lior Halphon
|
e5e7ce8203
|
Basic colorization
|
2018-11-16 22:05:35 +02:00 |
|
Lior Halphon
|
d42cbcdee2
|
Palette transfer functions
|
2018-11-16 19:11:21 +02:00 |
|
Lior Halphon
|
91a3091b2e
|
Build fix
|
2018-11-16 17:41:23 +02:00 |
|
Lior Halphon
|
2710939e1e
|
That should be an inc file
|
2018-11-16 17:38:53 +02:00 |
|
Lior Halphon
|
595907cae2
|
Border fade animation
|
2018-11-16 17:36:21 +02:00 |
|
Lior Halphon
|
69ac36cca1
|
Add default SGB border
|
2018-11-16 17:22:57 +02:00 |
|
Lior Halphon
|
398148f7ea
|
Basic SGB border support
|
2018-11-16 16:04:40 +02:00 |
|
Lior Halphon
|
382d9f8898
|
MASK_EN support
|
2018-11-16 12:42:52 +02:00 |
|
Lior Halphon
|
2f2b792edf
|
SGB save states
|
2018-11-16 01:53:01 +02:00 |
|
Lior Halphon
|
634a54c046
|
SGB resolution support (Cocoa only so far)
|
2018-11-15 00:21:21 +02:00 |
|
Lior Halphon
|
6ba5cfbeef
|
Support for multi-packet SGB commands
|
2018-11-13 23:45:26 +02:00 |
|
Lior Halphon
|
7735d638c6
|
Multiplayer SGB APIs/SGB detection
|
2018-11-12 00:37:06 +02:00 |
|
Lior Halphon
|
5c581651ce
|
Handle the SGB header commands, disable SGB functions if needed.
|
2018-11-11 22:50:00 +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
|
94136f5741
|
Adjust DAC attributes to fix LADX’s crackling audio (Fixes #125) while keeping Cannon Fodder’s buzzing reasonable (Proper audio measurements still required)
|
2018-11-10 19:14:18 +02:00 |
|
Lior Halphon
|
a39b314378
|
Fixed silly APU regression (Noise volume envelope ran too fast) Fixes #121
|
2018-11-03 14:37:19 +02:00 |
|
Lior Halphon
|
c9d6a1381f
|
Cross emulator compatibility with RTC saves
|
2018-11-03 01:31:14 +02:00 |
|
Lior Halphon
|
64922fff4b
|
Fixed a bug where channels 1 and 2 would start playing earlier than they should have if NRx4 was written to twice. Fixes #86.
|
2018-10-29 00:44:43 +02:00 |
|
Lior Halphon
|
3035f43428
|
Emulation of DAC charging, Fixes #46, #85, #88 and #89
|
2018-10-19 23:53:01 +03:00 |
|
Lior Halphon
|
4276549acd
|
Research notes TODOs
|
2018-10-19 01:02:27 +03:00 |
|
Lior Halphon
|
324201f336
|
Correct emulation of switching the DACs on and off. Fixes #100 and #87
|
2018-10-17 20:35:29 +03:00 |
|
Lior Halphon
|
e9b78b6370
|
Merge pull request #114 from RobLoach/patch-2
Fix control reaches end of non-void function
|
2018-10-12 17:10:11 +03:00 |
|
Rob Loach
|
2da7a3f7fb
|
Fix the return value of read_lvalue to be 0
|
2018-10-12 10:09:30 -04:00 |
|
Rob Loach
|
e834d32b8e
|
Update switch to just return at the end instead
|
2018-10-12 09:41:25 -04:00 |
|