FCEUMM core updates (and future updates)

2017-Sept-16: Current updates since last post for FCEUmm.

  • Zapper support for touchscreen devices
  • Updates for xbox 360 support
  • Enabled 3/4-player support for supported games (Bomberman II etc)
  • Added Zapper support using mouse or other pointer-type device.
  • Fix to Mike Tyson’s Punchout (PC10) crashing after 1st finishing round.
  • Fix some VS Unisystem games having no input controls (e.g. VS. Gradius, Sky Kid etc)
  • Updates to VS Unisystem palettes
  • Allow loading palette from file (rename compatible palette of choice and place in < system >/nes.pal)
  • Revamped overscan core option, split this into separate Horizontal and vertical overscans. now, no more side clipping.
  • Added Firebrandx Smooth palette
  • Added vblank and post render scanline overclocking methods
  • Added support for UWP
  • Added Support for IOS-arm64
  • Major update for full compatibility with retroarchievement
  • Some fixes to existing mappers.
  • Major mapper updates to support most roms from NoIntro and Goodnes romsets. ROMS still needs to to have HEADER though to run.
  • Added autopatching with .IPS or BPS
  • Added firebranx palettes
  • Added core option to change default region and add support for Dendy
  • Fix sound issue when overclocking is enabled
  • Added on-screen message when inserting/ejecting and switching disks in FDS

2017 - Feb 1:

Hi. im in the process of updating and adding core options features for fceumm. currently i already have implemented(subject for discussion) the following features in the core

-add mapper 190 (Support newly dumped Magic Kid Goo game) - merged - add OSD message when doing FDS disk functions - display message when disk is ejected, switch side A or B or another disk in set, and re-inserting disk - ( PR merged) - overscan revamp - implement separate horizontal and vertical scanning, so we can get near perfect(i said near as people have different view on aspect ratio) 8:7 PAR on 256x224 resolution ( PR submitted and subjected for discussion and code optimization) -possible additions would be region selector, dendy mode, and others

-more importantly, to enable soft-patching (and this is mostly i need help about)-partial support for soft-patching is possible-its working and does not seem to have gameplay related issues- but the actual code has to be re-written to allow only reading from memory and avoid all calls to fopen(). im no game developer, or a programmer or such. i do stuff by comparing, tracing, trial and error. i do not have the experience yet in writing codes and i think this process involves moving pointers around(i think moving retro_game_info* into FCEUI*?)and some malloc/free routines. i believe that the layout (its already in C) is ready for this change. -if anyone is familiar with libretro implementations, could point me to the right direction and even rewrite code as needed would be of great help.

-There are some reasons i want this core to have such options wherein another emulator(either standalone or libretro core) has better implemented options, and some are listed below:

  1. i wan to run nes/fds from retroarch
  2. this core has better support for retroarchievements
  3. most important to me - if partial support for soft-patching is ENABLED, the core does not crash even when using on mapper 23 and other games (wai wai world, getsu fuuma and other japan cartridge hacks/translations). softpatching for FDS is also possible.

Any help is appreciated. (please minimize discussion to features and not actual emulation accuracy -related stuff-Thanks

-ill post an unofficial fceumm core(x64 only)later with all the proposed changes builtin for those who wants to test. -visit offcial fceumm_libretro-git other updates-https://github.com/libretro/libretro-fceumm

1 Like

UPDATE (sort of or lack thereof): hack-a-mode-fceumm method.

-removed file-io calls(sort of) -ines(normal roms) work ok -enable support for NFS sound files - working (soundtrip?)

-fds is a “pain” (file read/write) -have to test vs_unisystem if it works(or if it did was working)

UPDATE: -fixed overclocking - audio issue related and core crashes when its enabled(hopefully)-tested on linux and windows x64. nd testing especially PSP users NOTE: not all roms can be overclocked though, especially those that rely on ppu timing and whatnot…

TO-DO: -add dendy and region override(build test available) -different ram power-on states(ram initialization) -try to fix save feature for FDS - Seriously need help with this.

2 Likes

I can’t help you as I know even less than you in regards of coding.

But I wanted to thank you for doing this :slight_smile:

testing and giving feedbacks is one form of helping.

-FDS saves fix - DONE! - this should allow FDS able to save games now.

1 Like

UNOFFICIAL fceumm available for testing: -includes all from latest commit - https://github.com/libretro/libretro-fceumm/commits/b265ebb258fbbc8ec69552347c3490622f0dfaa0 -whats added(unofficial) *high_quality audio enabled(fds, mmc5, vrc6, vrc7,SUNSOFT-5/FME-7,namco) *Zapper controller support(player 2)

testers needed. thanks ONLY FOR WINDOWS X64

Heres an alternative version for those who have high quality mouse that have high DPI(800dpi or greater)

2 Likes

2017-Sept-16: Current updates since last post for FCEUmm.

Zapper support for touch-display devices   
Updates for xbox 360 support
Enabled 3/4-player support for supported games (Bomberman II etc)
Added Zapper support using mouse or other pointer-type device.
Fix to Mike Tyson's Punchout (PC10) crashing after 1st finishing round.
Fix some VS Unisystem games having no input controls (e.g. VS. Gradius, Sky Kid etc)
Updates to VS Unisystem palettes
Allow loading palette from file (rename compatible palette of choice and place in < system >/nes.pal)
Revamped overscan core option, split this into separate Horizontal and vertical overscans. now, no more side clipping.
Added Firebrandx Smooth palette
Added vblank and post render scanline overclocking methods
Added support for UWP
Added Support for IOS-arm64
Major update for full compatibility with retroarchievement
Some fixes to existing mappers.
Major mapper updates to support most roms from NoIntro and Goodnes romsets. ROMS still needs to to have HEADER though to run.
Added soft-patching with .IPS or BPS
Added firebranx palettes
Added core option to change default region and add support for Dendy mode
Fix sound issues when overclocking is enabled
Added on-screen message when inserting/ejecting and switching disks in FDS

If anyone have touch-based devices like Android, zapper should be compatible for those, just choose “absolute” for zapper mode from core options:

3 Likes

Great work. :slight_smile:

I’ve tested zapper on “absolute” on an android 4.1 phone: the cross goes where you touch but if you remove your finger too fast, it will go back to the centre of the screen then shoot.
It shoots where you touch if you keep your finger down a bit.

thats actually a driver behavior. it resets to the center when pointer is offscreen from game view (like not touching the display) and a touch actually registers as PRESSED so it shoots as as finger is on screen. hench the option to remove crosshair.

in absolute mode, the crosshair follows where the pointer is(or when you touched on touch-devices), while relative you move the crosshair with the pointer.