Il s’agit d’un émulateur multi-systèmes émulant les consoles NES, SuperNes, Sega Master System, SG-1000, Game Gear, PC-Engine (TurboGrafx-16) / CD-ROM, SuperGrafx, TI-83 Calculator, Sega Genesis, Gameboy/Color, Atari 2600…
Il utilise des fonctions d’enregistrement vidéo et est relié au projet TasVideo.
– New Core: Wonderswan (and WS Color), cygne (ported from mednafen)
– New Core: Add quicknes as an alternative to neshawk, by default for supported boards, quicknes will load instead of neshawk. Note: advanced features such as lua hooks are not supported on quicknes
Emuhawk
– Open GL Rendering, and dropped support for directx and GDI+
– New Display options, including Aspect Ratio correction
– Support mapping hotkeys and input to mouse input and escape key
– Toggle sound hotkey
– Fix – Don’t pass deterministic emulation flag when not in movie mode
– Numerous fixes to default joypad buttons
– Fix some bugs in ffmpeg handling which seemed to be depending on an older version of ffmpeg
– Clarify some rom loading error handling, especially in PCE-CD
– Save Screenshot in savestates toggle – add a « big » savestates option off by default and set to 128kb as a somewhat arbitruary value (only reached on n64 at 640×480 or higher most likely, TASers should enable this if using high resolutions while TASing!)
– Show currently loaded core in the status bar (including profile information for bsnes)
– Improved input dislay – show immediate input, show previus frame when movie loaded, and different color for auto-hold buttons
– Fix weird sticky input bug
– Extension preferences dialog for ambiguous rom types such as .bin, also if loading one of these without being set, a dialog will pop up allowing you to pick the core
– Trace Logger – Fix blank lines in saving to file or clipboard on some platforms
– Cheats – Save cheats even if the cheat dialog was never opened (for instance, if the cheat were added via a game genie dialog or lua)
– Log Window – support Ctrl+C for Copy Selection
– Hex Editor – fix exceptions thrown when freezing multi-byte addresses
– Controller Config – add a Clear button
– Added .YMV importer.
Movies
– Fix savestate anchored movies (was broken for N64 and SNES, and unknown other scenarios)
– Store all sync related settings in movies, and load them automatically when loading a movie
– Fix loop offset feature
– Save the core name into the header
Play Movie dialog
– Faster preloading of movie data
– Match current game hash not current game name
– Add an Edit context menu item
– Don’t crash on headers with duplicate keys, don’t throw an exception when movie fails to parse
Lua Console
– Refresh button
– Lua Functions List – add search filter
– Add a New Script button
– Don’t ask to save changes when user only toggles lua scripts
Lua Library
– Add event.onexit()
– Add joypad.setfrommnemonicstr()
– Add memory.readbyterange(), memory.writebyterange() (previously only implemented in mainmemory library)
– Add movie.getinputasmnemonic()
– Add bizstring.split()
– memory/mainmemory libraries – add range checking and warnings when attempting out of range read/writes
– Change memory.getmemorydomainlist() to return a lua table instead of a string
– gui.text() – remove hacks that attempt use window size. Better logic is to be pure client space, and let gui.drawText() do anything else
– Fix typo, memory.write_u8 instead of a duplicate memory.write_s8
– Fix event.onframebefore/after being bypassed when turboing (shift+TAB)
– Fix event.framestart() – ability to set buttons
– console.log() – support multiple parameters, and don’t add an extra blank line
– Make print() an alias of console.log()
– Add console.write() and console.writeline()
– Fix joypad.Set() when using the controller number parameter, also strongly type that parameter to nullable int instead of object
– Add movie.fps()
– Add movie timer lua script that will display the clock time of a movie
– fix client.frameskip(), client.setwindowsize(), client.speedmode()
– Add a gameinfo library with getromname(), getromhash(), getdisplaytype(), getindatabase(), getstatus(), getisstatusbad(), getboardtype(), and getoptions()
– Fix joypad.set()
– Remove gui.alert()
– Add emu.setregister() – implemented in Atari 2600, 7800, Ti-83, sms/sg-1000/gg
– Lua Functions list – strongly type parameters, and show optional paramters and default values
Virtual Pad
– Analog sticks – when a movie is active show the previous frame’s line
– Analog sticks – add max value boxes
– Support single vs multi-player mode toggling, and put single as the default
– Support Dual Gameboy
– Make clear button also clear the analog control
Ram Search
– Fix float searches and float display
– Show warnings about attempted reading outside a memory domain’s size
Ram Watch
– Set the CurrentFileName property during LoadFile, fixes some subtle bugs that resulted from a loaded watch with an empty name
– Show warnings about attempted reading outside a memory domain’s size
– Fix Poke parsing error
– Fix Ram Watch to update after instead of before, to be consistent with Hex Editor and Ram Search
– Fix Duplicate watch bug
Dual GB XML Creator
– « Use Current Rom for all » button (If rom is not inside an archive) for easy XML creation
– Ask before overwriting an existing file
– Automatically load file after saving
N64Hawk
– Fix movie playback (was busted in the 1.6.1 release)
– Controller settings for enabling/disabling controllers and setting Pak type (or set to no Pak)
– Add support for Cpu Type (default is still DynaRec, movie makers should be setting this to Pure Interpetter when recording movies!)
– Add support for the Z64 Rsp Plugin
– Add circular range constraint option, and set by default (better mimics real N64 analog stick range)
– Fix 0 x 0 video size on startup
SNESHawk
– Make performance core the default (movie makers should switch to compatibility mode!)
– Add Accuracy core profile option
NesHawk
– Add Peripheral support (Zapper, Fourscore, Arkanoid Paddle, and Famicom peripherals)
– WARNING: peripherals are not yet supported in movie recordings!
– Add Region override
– Add Board Properties settings dialog (for tweaking the default startup values of mapper variables)
– Make full_nes_palette.nes test work
– Change defalt palette to a « more accurate » one rather than legacy supporting the FCEUX palette
– Support Mappers 30 and 31
– Tracelogger – fix nondeterminism problems
– NES PPU Viewer – Update labels without requiring mouse movement while processing periodical graphical update (hover over a sprite and watch the parameters change in realtime)
– Speed up new controller routines, significant overall speedup in occasional (bad) games that constantly poll the controllers
– fix desync bug when using reset or power and frame precise save/loadstate
PceHawk
– Note: Previous savestates have become invalid
– Tiler Viewer tool
– Code/Data Logger tool
– Support lua – event.onmemoryexecute/read/write methods
– Add Cart Battery Ram memory domain
SmsHawk
– Note: Previous savestates have become invalid, and sync changes have occured!
– VDP Viewer tool
– Support SMS Bios
– Implement option for Auto Region (export/japan) and Auto Display type (NTSC/PAL)
– Implement Export/Japan, NTSC/PAL, BIOS Enable, and US/JP Bios selection
– Add Region to GameInfo
– Improved TMS-mode sprite render, fixes Bank Panic (SG1000) intro screen
– Improve rendering accuracy of left-column blanking.
– Fix issue with when Sprite Overflow fires.
– rework sprite render code, passing several additional VDP tests, and also fixing Fantastic Dizzy.
– implement VDP/PSG IO port mirroring. passes some additional VDP tests
– Fix Ernie Els Golf GG (has on-cart volatile ram)
– Support « External Cart Ram » mapper for SG1000 (Castle and Othello)
– Support Super Boy 3
– Support terebi oekaki mapper emulation
– Support Korean mappers, fixes Cyborg Z, Dodgeball King, F1 Spirit, Jang Pang III, Knightmare II, Nemesis, Nemesis 2, Penguin Adventure, Sangokushi 3, Street Master, Wonsiin
– Add option to make 3d games playable. some are actually interesting. sega does what nintendont
Atari2600Hawk
– Fix frame timing infrastructure, all frames are now the same length. This is a SYNC BREAKING change, movies for earlier releases will no longer sync
– PAL support (including PAL detection heuristics)
– Secam support
– Mapper heuristics (now correctly determines mapper on games not in the game database)
– Implement the DPC mapper (Pitfall II), add DPC memory domain
– Implement mappers FE, SB, FA2, EFSC, F8SC, F6SC, F4SC, 0840
– Implement Super Charger (AR mapper)
– Implement multi-cart mappers (togglign games is done via Hard Reset)
– Fix mappers 3E, E7, 3F
– Support Hard Reset (and ability to record in movies)
– Support memory poke on the System Bus memory domain, and ensure safe memory poke on all domains
– Fix aspect ratio (no longer using a 320×262 hack)
– Implement Cart Ram memory domain
– Support setting top line, bottom line, and background color
– In Rom Details dialog, ability to mark an unknown ROM and have it automatically put in the game db
GBHawk
– New frame timing that makes all frames equal in length, and movie times accurate. THIS IS A SYNC BREAKING CHANGE
– Support setting the initial RTC time in movies
– Support chaining the RTC to user system clock, when not in movie mode.
– Make RTC run at the correct 59.7fps (instead of 60fps)
– Fix crash on input display for dual gameboy
GenesisHawk
– VDP Viewer tool
– Support lua emu.getregister(s)
– Gmv importer – support 6-Button controller
Atari7800Hawk
– Record Pal flag into movies
TI83Hawk
– Note: Previous savestates have become invalid
– Palette Config and new default palette