Commit graph

62 commits

Author SHA1 Message Date
kub
7263343dc7 core, improve 68k timing accuracy 2023-07-11 21:18:05 +00:00
kub
c3d70d1305 sound, improve ym2612 timers implementation 2023-06-23 19:25:52 +00:02
kub
8eeb342641 mcd, some cleanup, fix Word-RAM in 2M mode 2023-05-10 22:20:06 +00:00
kub
f9ed944604 core vdp, avoid rendering if no changes to RAMs/registers
mainly benefits 32X in faster/fastest rendering mode, 0-5% saved
2023-04-27 22:18:55 +02:00
kub
133006a9d4 core, improve 68K/Z80 timing 2023-04-24 23:50:06 +02:00
kub
134092feb7 md, implement z80 cycle stealing when accessing 68k bus
this fixes sound issues in Overdrive 2
2023-04-05 20:02:47 +02:00
kub
d515a352b3 core vdp, fix sprite rendering issues with Overdrive 1/2 2023-04-05 20:00:37 +02:00
kub
572cf80e38 core vdp, fix regression (switching V30->V28 in lines 225-239) 2023-02-07 23:10:22 +00:00
kub
2c4675a993 core, fix cpu sync regression 2022-10-16 20:17:42 +00:00
kub
c9d5f41b0a 32x, minor poll detection fix 2022-10-14 18:42:43 +00:00
kub
fdaf9d10bd core, improve mcd+32x cpu synchronization 2022-10-12 21:44:32 +00:00
kub
099f68c22a core vdp, fix regression after last commit 2022-02-15 22:15:12 +00:00
kub
3b68e5107d core vdp, fix obscure VInt bug, some more optimisation 2022-02-14 20:55:35 +00:00
kub
9f1d5acdb4 sound, fix pcm/pwm handling wrt fast forward (mcd, 32x, pico) 2022-02-07 21:09:13 +00:00
kub
02d753e346 md, fix irq priority handling for H-int 2021-04-10 21:34:48 +02:00
kub
dda72beae4 vdp, fix for 68k access timing 2020-12-12 17:29:31 +01:00
kub
8d67848ddf fix for 68K cycle accounting 2020-03-27 19:27:05 +01:00
kub
c55a44a88c vdp fifo speed optimization 2020-03-14 19:52:27 +01:00
kub
478a1164fe fix for VINT while DMA is running 2020-02-27 21:19:37 +01:00
kub
17bd69adc6 revised VDP fifo implementation 2020-02-07 22:14:34 +01:00
kub
1259ac4f60 VDP timing improvements 2020-01-26 20:46:21 +01:00
kub
43e1401008 emulator timing fixes, VDP DMA fixes, improved DAC audio 2020-01-14 23:00:44 +01:00
kub
8ac9ab7fcb audio: added SSG-EG to YM2612, plus some timing changes for SN76496+YM2612 2020-01-08 00:49:13 +01:00
notaz
0a0073dc9f fix a corner case with h-int 2018-01-28 19:13:01 +02:00
notaz
6311a3baf5 move more globals to PicoInterface
similar reasons as before
2017-10-22 02:13:46 +03:00
notaz
35f2b65ef7 add 68k overclocking support 2017-10-20 12:21:09 +03:00
notaz
93f9619ed8 rearrange globals
scripted find/replace
gives slightly better code on ARM, less unnecessary asm,
~400 bytes saved
2017-10-20 12:21:09 +03:00
notaz
12f23dac6f famec: split fm68k_emulate
in FAMEC_NO_GOTOS mode at least
2017-10-15 00:45:55 +03:00
notaz
e9a11abb3c drop some unnecessary inlines
apparently somebody compiles with msvc?
2017-10-14 00:53:09 +03:00
notaz
0e4bde9b2d rework sr
note to self:

h32 0x10A .. 0x127 0x1D2 .. 0x1FF 0x000 .. 0x109
pclk      30      |      46      |      266      = 342
hbset       0x126        ...       0x009
pclk   29  |      1   +  46    +  10    |  256
mclk   290 |           570              |  2560  = 3420
68kclk 41.4            81.4               365.7 ~= 488.5

h40 0x14A .. 0x16C 0x1C9 .. 0x1FF 0x000 .. 0x149
pclk      35      |      55      |      330      = 420
hbset       0x166        ...       0x00A
pclk   28  |      7   +  55    +  11    |  319
mclk  28*8 | 7*8   4*8+314+10+(18+11)*8 | 319*8  = 3420
68kclk  32             92                 364.5 ~= 488.5
2017-10-14 00:53:08 +03:00
notaz
22814963cc some irq hacks
notes to self (derived from Nemesis):

H32: 0x10A .. 0x127 0x1D2 .. 0x1FF 0x000 0x001
pclk       30             46          1 |0x109
mclk                 770                | 2650   = 3420
68kclk              110                   378.5 ~= 488.5

H40: 0x14A .. 0x16C 0x1C9 .. 0x1FF 0x000 0x001
pclk       35             55          1
mclk     35*8       4*8+314+10+19*8     |0x149*8
                  788                   | 2632   = 3420
68kclk           112.5                    376   ~= 488.5
2017-10-14 00:53:08 +03:00
notaz
88fd63ad10 split memories away from Pico
saves ~3k of code on ARM because Pico no longer crosses ldr limit
2017-10-14 00:53:08 +03:00
notaz
334f00e24e vdp timing hacks 2017-10-12 02:56:09 +03:00
notaz
3162a7104c adjust z80 timing a bit 2017-10-12 02:54:46 +03:00
notaz
e42a47e208 some more risky timing changes
But should be closer to the real thing.
Let's see what this will break...
2017-10-12 02:54:41 +03:00
notaz
5d638db094 handle frequent psg updates 2017-10-07 01:36:59 +03:00
notaz
4f2cdbf551 clean up dac code a bit 2017-10-07 01:36:59 +03:00
notaz
ea38612fad eliminate texrels (wip) 2017-08-06 18:18:29 +03:00
notaz
99ade2ee2f famec: remove unused dual code 2013-09-24 03:57:43 +03:00
notaz
fa8fb75445 handle 32x+cd 2013-09-16 02:03:29 +03:00
notaz
a4dfdb6de1 general timing hacks 2013-09-06 02:40:37 +03:00
notaz
53f948c901 make hcnt code friendly with split timeslices
values need to be fixed, they're wrong, wrong wrong...
2013-09-03 02:52:07 +03:00
notaz
89dbbf2b2f rename cd/pico.c -> cd/mcd.c 2013-08-28 02:24:46 +03:00
notaz
08769494e8 cd sync improvements, part2 2013-08-28 02:05:21 +03:00
notaz
ae214f1c37 new timing for main and cd 2013-08-28 01:07:26 +03:00
notaz
531a8f3883 improve input handling 2013-08-17 03:38:47 +03:00
notaz
3e5b912cf8 minor 68k timing tuning 2013-08-10 17:58:23 +03:00
notaz
12da51c27a some new cpu debug code 2013-08-10 17:57:54 +03:00
notaz
19886062f1 rework sh2 sync, again..
also some new debug and poll code
VF seems to be ok at least..
2013-07-27 22:23:52 +03:00
notaz
a8fd6e3761 32x: rework scheduling/timing
- don't run in line quantity
- decouple from 68k
- some things to tune..
2013-07-09 03:30:58 +03:00