20 Commits

Author SHA1 Message Date
ikari
858d660569 Update a slew of Xilinx autogenerated files 2025-06-24 10:58:46 +02:00
Maximilian Rehkopf
5b0f22d411 Ensure MSU-1 data address increment at end of DMA (#208)
* Ensure MSU-1 data address increment at end of DMA

* fix MSU1 address increment for rest of the FPGA cores

* update generated files
2023-03-30 11:09:25 +02:00
ikari
e9a11762d9 FPGA: General update of generated files 2023-02-03 01:37:32 +01:00
ikari
fcc1d78923 FPGA: Change MK3 FPGA clock input from 24MHz to 8MHz
Required to support STM32 clock output (MCO1) which cannot be fed and
prescaled from the CPU clock
2023-02-03 01:37:31 +01:00
ikari
9cdb5df25e Merge remote-tracking branch 'github/develop' into develop 2021-07-30 17:11:18 +02:00
ikari
e35792e068 FPGA: Bump Quartus version, update generated files 2021-07-29 23:06:25 +02:00
ikari
f7e1208b06 comments, wording, cleanup, cosmetics 2021-07-28 02:19:06 +02:00
ikari
395ae09084 FPGA build: add header files to prerequisites 2021-07-28 01:26:42 +02:00
ikari
008d4e3efe Give full access to banks C0-FF during in-game hook
This allows for savestate handler execution directly from the menu ROM
bank without having to copy it to block RAM or similar.
(this seems to be causing unresolvable issues with HDMA interrupting
NMI/IRQ so it will be due for an overhaul)
2021-07-28 00:51:33 +02:00
ikari
421725dec9 DSPx: get up to date with base core
(relocatable save ram area, unlockable banks E0-FF, USB EXE hook...)
2021-07-28 00:40:52 +02:00
ikari
031cb5201d integrate savestate handler call with in-game hook
Also move in-game hook out of the way of MCU_CMD area used by savestates
2021-07-28 00:30:48 +02:00
ikari
f5498c8d6b Savestates: Do not attempt to snoop anything coming from cart
Databus direction was reversed according to the ROMSEL signal, not
taking into account SRAM that is mapped outside of active ROMSEL areas.
Instead take into account anything where data is sourced from the
cartridge (ROM_HIT).
2021-07-22 14:07:09 +02:00
ikari
0a165d0235 Savestates: do not snoop SNES native PA registers
Only snoop registers 2100-2183 and ignore the ones we supply ourselves.
e.g. Trying to snoop BS-X registers would result in the SNES not being
able to read them at all, freezing the
BS-X BIOS at the startup screen.
2021-07-22 13:57:34 +02:00
ikari
d31295a091 [FPGA/DSP] Deassert write enable one clock before address change 2021-07-22 12:43:21 +02:00
ikari
3348f3e057 [FPGA/DSP] update save state logic, add source files 2021-07-22 12:16:45 +02:00
ikari
6b1a4254b1 FPGA: Mask data line toggling before data ready
On some occasions data output can be enabled before data is valid.
This results in needless data line toggling which in turn can cause
coupling into other signals, thereby potentially altering the ROM address
and putting wrong data on the bus, etc.
Use a narrowed output enable signal for SNES read cases to prevent this
effect.
2021-07-20 23:14:36 +02:00
ikari
3ccffb1fda Detect end of cycle based on longest enable pulse
CPU_CLK is substantially shorter than RD# during DMA transfers.
Access cycle end was previously based on falling edge of CPU_CLK.
This resulted in premature yielding of RAM access to the bus and in
consequence incorrect values leaking onto the bus.
2021-07-20 18:19:18 +02:00
Thomas Prescott
195e1211a6 update msu-1 revision on the other fpga cores 2021-06-15 18:37:17 -05:00
ikari
6759ce7277 Update global & FPGA makefiles
avoid redundant rebuilding of FPGA cores
2020-10-20 23:15:54 +02:00
ikari
5b3f38ee80 FPGA: Move DSPx to separate core 2020-09-24 00:52:50 +02:00