📄 changes
字号:
to the back area color addition hack
Render: Implemented mosaic effect (vertical direction only)
Render: Major tweaks to the vertical offset change support in mode 2 -
still not correct but appears better
0.33 [TRAC]
SPC: Fixed a very stupid, nasty bug that showed up in 0.26, that
caused the DIV YA,X opcode to corrupt the stack pointer
Sound: Fixed a bug that caused the sound driver not to be installed
if a ROM filename was not specified on the command line
0.32
Sound: Fixed some problems that caused sound generation to be used
when sound was disabled [TRAC]
SPC: Fixed a bug that caused SPC timers to lose cycles in conditional
branches [Brad Martin]
SPC: Now allowing SPC timer targets to be set when timer is enabled
as it seems to fix other timing problems [Brad Martin]
Render: Fixed some problems with layers using 16x16 tiles having
small virtual screens [TRAC]
0.30
GUI: Fixed yet another small GUI bug [TRAC]
Joypad: Tore out the old joypad code [TRAC]
Allegro: Now linking with Allegro 3.11, should fix some sound card
incompatibilities [TRAC]
SPC: Bug fixes in 4 SPC opcodes, and a serious bug in the SPC CTRL
register fixed, AND a new sound DSP/sound generation core
(Compatibility noticably improved!) [Brad Martin]
0.277 [TRAC]
SPC: Fixed timer 2 to be a 64kHz timer - had mistakenly made it 8kHz
in the rewrite
SPC: Fixed some bugs in the sound DSP, that could have potentially
caused memory overwrite
0.276 [TRAC]
APU skipper: fixed a nasty bug that showed up in (and went unnoticed
since) 0.27, caused severe SNES timing problems
GUI: Fixed a bug causing the CPU Reset to freeze up when the SPC is
enabled after it having been disabled during execution
0.275 [TRAC]
SPC: Many more optimizations to opcode fetcher
SPC: Implemented TCALL instruction
0.27 [TRAC]
SPC: More optimizations
SPC: Completely rewrote SPC timers - fixes some SPC problems and sound
playing too fast or slow
SPC: Forcing SPC to 'catch up' once per 65816 'scanline' time period,
may clear up more sound quirks (until sound generation code can be
rewritten)
Timing: Vblank timing adjusted slightly
0.26 [TRAC]
HDMA: Fixed a bug where the transfer size for the first line of a set
was corrupted
HDMA: No longer repeats write to register for continue mode
IRQ: Put in a better H-IRQ hack, until I do the timing
Render: Palette is set for highest brightness in the frame (helps
Chrono Trigger, SF2 series, others), thanks to an anonymous
contributor for help
Timing: Hblank timing code simplified
0.251 [TRAC]
Render: Fixed the back color add hack (Mario World blue sky, others)
that got broke somewhere along the way.
Source: Fixed some problems in the makefile that gave some users
trouble rebuilding.
0.25 [TRAC]
CLI: Implemented a basic commandline interface, providing a means to
override ROM loader autodetection
Released to the public!
0.25b17 [TRAC]
Timing: Reworked how Hblank is handled
SPC: Now forced to 'catch up' once a frame, solves the 'lags' and
improves sound overall
0.25b16 [TRAC]
SPC: Source cleanup, general optimization (register allocation needs
more improvement), a few more fixes
DMA: Fixed a bug where DASL/DASH was not being reset to 0 after general
DMA transfer (thanks to ESNES and Trepalium for pointing me to DMA -
F-Zero is fixed!!!)
Render: Fixed a stupid, nasty, bug in the new sprite code
0.25b15 [TRAC]
GUI: Fixed another bug with changing SPC enable (menu item wasn't changed)
Render: More changes to sprite render code
PPU: Slight change to 16x8 multiply
PPU: Fixed the emulation of the RDNMI register/timing - thanks to
archeide of SNEmul for pointing me in the right direction!)
65816: Fixed the write order of some instructions
SPC: Now treating SLEEP and STOP as invalid opcodes for debugging purposes
(is there any point in emulating these, similar to the 65816's STP?)
SPC: Fixed part of the SPC register dump
SPC: Implemented hidden 64 bytes of RAM at top of SPC address space
0.25b14 [TRAC]
Fixed a bug in the GUI with changing SPC/sound enable
Added a FPS counter - it works, unfortunately you can't always see it...
must be enabled in the GUI
0.25b13 [TRAC]
Reversed plot order back to the way it used to be before 0.16 - another
speed increase (doh!)
0.25b12 (unreleased) [TRAC]
Implemented deinterleaved VRAM storage and a new mode 7 renderer:
VRAM is now also stored as 32k low bytes and 32k high bytes. This has
minimal effect overall but may provide a mode 7 speed increase, in
particular for low-end systems (486)
Fixed a bug where disabling mode 7 also disabled sprites
More layering priority fixes in modes 2-6
Altered the 256x240 mode to get rid of a lot of the excess border
Reduced the 256x240 mode to 256x239
Modified the way screen modes are handled with the GUI
More tweaking with DMA/HDMA emulation
0.25b11 [TRAC]
Tweaked with the screen core a bit, removing a lot of redundant code
Improved the header detection in the ROM loader (thanks to Gridle for the
suggestion)
Modified the way frameskipping is handled
0.25b10 [TRAC]
Tweaked with the controller code a bit - now DKC and Mario All Stars
work as expected
0.25b9 [TRAC]
Fixed a bug in VRAM read ports - they were suggested by zsKnight as a
likely cause of gfx corruption, and making a change to match a noticed
difference in the '9X source, gfx corruption went away in the following
ROMs, and likely others: ActRaiser, FF2, Super Metroid, Wario's Woods...
Fixed a stupid bug that showed up in 0.25b8 that stopped FF2 from starting
Several layering priority fixes
0.25b8 [TRAC]
Removed H-IRQ hack as it was causing more problems than it helped
Implemented partial support for delayed IRQ
Implemented a hack in WAI which causes the CPU timing to skip ahead to the
next event
Some SPC optimizations
Another doc was wrong: increased SPC RAM back to 64k, sound is back to
being reasonable (timing is still terrible)
0.25b7 [TRAC]
More CPU speed-ups
Hooked SPC back up with on-demand execution, however sound is not
considered a 'demand', and SPC is slow and buggy still.
0.25b6 [TRAC]
Layering priority fix: BG3 highest priority in mode 1 - BG3 high priority
tiles now drawn over highest priority sprites, not under (helps Mario
World map)
0.25b5 [TRAC]
Fixed a bug in full VRAM address increment
Fixed a bug that sometimes caused Reset to freeze emulator
Fixed mode 7 outside-screen-area clip/char 0 repeat - it appears that
two docs were wrong on this...
Native mode XCE no longer forces M/X bits set
Now always keeping 65c816 flags in a register during opcode execution
More source reorganization
0.25b4 [TRAC]
Fixed a bug in scrolling hardware ports
Rewrote more opcodes to take better advantage of new opcode fetcher
0.25b3 [TRAC]
Implemented alternate 65c816 opcode fetcher (should be considerably
faster - original one likely to be removed in the future)
Implemented interleaved HiROM support in ROM loader
0.25b2 [TRAC]
Finished hooking in last of new horizontal calc code
Slight speed-up tweak in 65c816 emulation
Fixed a nasty bug that showed up in 0.25b1 that caused severe gfx
corruption in at least one ROM (ActRaiser)
0.25b1 (doh! date in readme said 4-3, should have said 23-3) [TRAC]
Rewrote horizontal scrolling calc code to reuse data
Reworked some of the tile cache invalidate tables/recaching code to
store information on certain special cases of tiles to limit some
unnecessary checks
Implemented OAM decode caching - this increases sprite rendering speed
noticably - more optimizations possible here...
0.17b7 [TRAC]
Fixed data store method of double write registers (BG scroll, M7 matrix)
More speed up tweaks in memory mapper and screen core
Fixed a bug in HDMA code - fixes GPFs after fights in FF5, extra
sprites in TMNT4 and missing sprites in Killer Instinct
Disabled DJGPP LFN support (was causing problems in the Load ROM file
selector in the GUI, because it's still expecting 8.3 filenames)
Thanks to Lanice for pointing out the crashing! (doh)
Rewrote a lot more bits of the GUI to use OOP and allow more advanced
features to be implemented in the future
Compiling in two new fonts: the font from ZSNES (thanks zsKnight!),
and a slightly cosmetically modified version of the same
(only the modified font is available in the GUI at this time)
0.17b6 [TRAC]
More internal work on GUI
Fixed a bug in mode 1 background priorities with BG3 high priority
enabled - helps intro in FF5
Oops! Removed some code that shouldn't have been in b5 - was causing
the ROM loader to create a test file the size of the loaded ROM
Fixed a bug that caused the color subtraction in back area hack to
kick in sometimes when it shouldn't
0.17b5 [TRAC]
Fixed a bug in the ROM loader that caused it to get in an endless loop
on ROMs that weren't an even multiple of 32k (excluding header)
Fixed a bug that prevented HiROM SRAM from working AND allowed it to
overwrite other memory
Implemented SRAM mirroring in HiROM
Reduced SRAM allocated to 64k and SRAM supported in HiROM to 64k
Changed the value certain areas of RAM were initialized to to closer
match SNES '9X
Changed memory mapper so LoROM/HiROM shared more code/data
ROM loader: replaced the fstream code with stdio code - this seems to
fix the problem with 32k ROMs not loading correctly
0.17b4 [TRAC]
More work on background plotting speed, hw port emulation speed/accuracy
SPC disabled - stopped working sometime between b2/b3 and needs to be
rewritten anyway
More CPU speed
Fixed many non-emulation related bugs that caused crashes in pure DOS,
and forced the switch to WDOSX before
Reverted to standard DJGPP stub now that WDOSX is no longer necessary
More fixes to LoROM SRAM mapping - SNES '9X source and one problematic
ROM provided insight into the workings of SRAM mirroring
Improved emulation of CGDATA/CGDATAREAD:
now use seperate vars for odd byte reads
DMA modes 2+ had been disabled for some strange reason (doh!) - fixed
0.17b3 [TRAC]
Now using WDOSX, because of having too many problems with the standard
DJGPP stub
Moved plenty of code around in gfx engine for potential speed increase
and code size reduction
Most data moved around in hw port emulation
Most hw ports now reset in Reset (used in 'Reset Emulation' and
'Load ROM' in GUI) - some still remain (especially in SPC)
More work on ROM loader
Can now go in GUI without specifying ROM on command line, however trying
to load a ROM in GUI is still painful!
0.17b2 [TRAC]
Simplified hardware ports in memory mapper
Improved emulation of OPHCT/OPVCT
Statically allocating SRAM, WRAM, VRAM, SPC address space, OAM now
Improved emulation of OAMDATA/OAMDATAREAD:
now use seperate vars for odd byte reads
Fixed a bug where 8 bytes too few were being allocated for OAM
SRAM allocation halved (only 128k now)
LoROM: SRAM supported reduced to 64k, writes prevented if ROM says less
exists (allows Puzzle Bobble to start)
0.17b1 [TRAC]
Implemented speed throttling (thanks to Richard Mitton of the New
Zealand Story Emulator for help with this!)
GUI overhaul begun ('3D' appearance added, code is becoming more object
oriented)
CFG handler rewrite begun
Source cleanup/overhaul begun
LoROM 16+Mbit and HiROM memory maps fixed (thanks to zsKnight for help!)
Implemented Hblank emulation/CPU timing (thanks to zsKnight and the '9X
source for help and info!)
Fixed emulation of SLHV register (thanks to '9X source for info!)
Fixed SPC memory map to only have 32k of RAM
Fixed a few CPU opcodes
Fixed a memory overwrite bug in a few CPU opcodes which caused the
emulator to deconfigure controller keymaps
0.16f: Various bug fixes and speed-ups.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -