Commit graph

974 commits

Author SHA1 Message Date
notaz
1c25c32c11 sms: improve sr a bit 2017-10-17 00:53:35 +03:00
notaz
7669591e08 famec: eliminate global context ptr
saves like 25-35K of .text

current compile resource usage on i5-6600K:
            cpu  mem
gcc 5.4.0:  17.0 1.1g
clang 3.8:  1686 2.3g

FAMEC_NO_GOTOS:
gcc 5.4.0:   8.4 0.4g
clang 3.8:  20.0 0.15g
vs2008/O2: ~1800 ?
vs2008/O1:  ~720 ?
2017-10-15 03:26:48 +03:00
notaz
12f23dac6f famec: split fm68k_emulate
in FAMEC_NO_GOTOS mode at least
2017-10-15 00:45:55 +03:00
notaz
fdcfd32374 get rid of custom memcpy funcs
not used for anything important, just a maintenance burden
2017-10-14 21:28:36 +03:00
notaz
ba11a48115 fix clang build
yet another workaround for it...
2017-10-14 21:28:36 +03:00
notaz
24aab4da73 let it build on msvc
supposedly for the original XBox?
2017-10-14 21:28:24 +03:00
notaz
adb98333d7 drop draw_amips from libretro too
There's no proof it's any faster, it's only a maintenance burden.
See also 4aedc59300 .
2017-10-14 00:53:09 +03:00
notaz
e9a11abb3c drop some unnecessary inlines
apparently somebody compiles with msvc?
2017-10-14 00:53:09 +03:00
notaz
b5f5dc1fad android: make armeabi buildable 2017-10-14 00:53:09 +03:00
notaz
df9251536d libretro: satisfy vita's dynarec needs in a cleaner way 2017-10-14 00:53:09 +03:00
notaz
28a5b39232 libretro: update for core changes
also drops the broken "fps override" feature
2017-10-14 00:53:09 +03:00
notaz
a4fa71d4da libretro: drop sram clear
It's done by the core. If the core is missing something, core itself
needs to be fixed.
2017-10-14 00:53:09 +03:00
notaz
bce144211c some portability cleanups 2017-10-14 00:53:09 +03:00
notaz
7612bf90be re-import all libretro code from it's fork
Verbatim copy from https://github.com/libretro/picodrive/ commit
9ae88ef15ff00cacc3877c7ecc13b0092bab50b8 , so look there for the history
of libretro specific changes. Unfortunately there is too much noise and
divergence to merge this in a proper way.
2017-10-14 00:53:09 +03:00
iLag
126eb5f469 Fix remaining bugs and fix indentation 2017-10-14 00:53:09 +03:00
iLag
9a570a67ca Restore support for short GG cheats. 2017-10-14 00:53:09 +03:00
iLag
ed4a2193f7 Add support for Master System cheats.
notaz: drop wrong code (PicoWrite8_z80 are 68k functions, not for sms)
2017-10-14 00:53:09 +03:00
iLag
8655fd0462 Add support for single-line cheats and PAR codes.
notaz: include required header
2017-10-14 00:53:09 +03:00
David
9e38b1f0d6 Fix the lprintf method (libretro side)
The lprintf method used the format string instead of the buffer build
from va_list
2017-10-14 00:53:09 +03:00
notaz
65e4c57baa build: some clean ups 2017-10-14 00:53:09 +03:00
notaz
84162df45c build: drop function-sections
this has provoked people to do some horrible ifdeffery in libretro fork,
while the benefit is minimal, if any.
2017-10-14 00:53:09 +03:00
notaz
0bc8955485 release 1.92 2017-10-14 00:53:09 +03:00
notaz
cf07a88d6e fix cell scroll drawing 2017-10-14 00:53:08 +03:00
notaz
c041308933 fame: fix roxr
also take interrupts on exit, like other cores do
2017-10-14 00:53:08 +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
e015ad3c1b update libpicofe 2017-10-14 00:53:08 +03:00
notaz
2b46e6c105 fix t574 reset 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
e64886365d drop legacy save support
the format has been changed like 10 years ago
2017-10-14 00:53:08 +03:00
notaz
4aedc59300 drop unmaintained mips code
can always be brought back if anyone has proof it's faster
2017-10-12 02:56:11 +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
ebd70cb5d9 fix various logging issues 2017-10-12 02:54:46 +03:00
notaz
9db6a54485 menu: add reset hotkey 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
8f80007bcc fix underalloc 2017-10-07 01:36:59 +03:00
notaz
d1b8bcc634 some poor timing improvement attempts 2017-10-07 01:36:59 +03:00
notaz
75b84e4b7c slightly better z80 vdp reads 2017-10-07 01:36:59 +03:00
notaz
12f89605e3 improve fast forward for cd
still broken, but a little bit better
2017-10-07 01:36:59 +03:00
notaz
5d638db094 handle frequent psg updates 2017-10-07 01:36:59 +03:00
notaz
5103774f6d sn76496: simplify writes 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
e23f4494fb state: setup banks before CPUs on load 2017-10-07 01:36:59 +03:00
notaz
151df6adf9 simple ym2612 fixes 2017-10-07 01:36:59 +03:00
notaz
6d28fb5023 fix ym2612 asm, rework EG
this should be split, but I'm lazy
EG saves ~900 bytes
2017-10-07 01:36:59 +03:00
notaz
e0bcb7a90d some support for vdp debug reg 2017-10-03 00:41:13 +03:00
notaz
1a08dec0e0 simplify tile drawing
cuts away 1126 bytes of code on x86
2017-10-03 00:41:13 +03:00
notaz
eced019098 scroll size improvement 2017-10-03 00:41:13 +03:00
notaz
b71cbbf705 some support for 128k mode 2017-10-03 00:41:10 +03:00