FCEUX, a NES Emulator
Go to file
zeromus 892e7cb5f5 change how memory is allocated to clean up a lot of messed up junk (mainly strange alignment adjustments which didnt completely make sense and frees which didnt match the allocation function that was used).
In case there are problems on other platforms (a few seems probable), here's the idea
1. Get rid of all manual alignment adjustments
2. use FCEU_malloc or malloc, as you see fit
3. use FCEU_free (or FCEU_gfree) if you use FCEU_malloc or FCEU_gmalloc. There's no real reason to need FCEU_gfree; this rule might be eliminated in the future (at which time FCEU_gfree will be removed)
4. If you need more alignment, increase it in FCEU_malloc. It's unlikely more alignment will ever be needed.

On windows, since the FCEU_*malloc functions now use aligned_alloc, we will catch instances where free() is used to free them (which happens frequently). allocates and frees should be matched. fix the free call if you ever observe this happening.

also

5. In general, remove crufty error handling for allocation failures. This just gunks up the code. If allocation fails, the application terminates.
2022-08-22 22:53:09 -04:00
.github/ISSUE_TEMPLATE Update issue templates 2021-12-05 21:35:46 -05:00
.vscode Added separate linux core dump debug target to vscode config. 2021-12-29 16:32:34 -05:00
attic delete excess gitignores (we're starting from scratch) 2018-04-10 23:22:39 -05:00
documentation replace corrupted manpages with original versions (#318) 2021-02-01 05:44:39 -05:00
fceux-server honor standard build environment variables (#317) 2021-02-01 05:44:10 -05:00
getSDLKey migration tidying (build master from trunk) 2018-04-08 17:35:15 -05:00
gfceu delete excess gitignores (we're starting from scratch) 2018-04-10 23:22:39 -05:00
icons Implemented piano roll save/load state functionality for Qt GUI. Fixed periodic autosave for Qt Tas editor. 2021-11-28 18:56:22 -05:00
m4 migration tidying (build master from trunk) 2018-04-08 17:35:15 -05:00
output Added 2.6.4 release notes to help docs. 2022-03-23 20:26:50 -04:00
pipelines Fix libswresample-dev dependency name for ubuntu linux appveyor build script. 2022-05-31 22:56:52 -04:00
scripts Updated unix debug build script to allow for selectable Qt5 or Qt6 build. 2022-03-11 21:37:41 -05:00
src change how memory is allocated to clean up a lot of messed up junk (mainly strange alignment adjustments which didnt completely make sense and frees which didnt match the allocation function that was used). 2022-08-22 22:53:09 -04:00
vc make scmrev command work like desmume does (using system32 directory instead of sysnative). this probably fixes #459? or if not then desmume is broken, too. I'm not sure why the 32bit version can't be used every time. I think it can be. 2022-08-08 21:19:45 -04:00
web Updated home and download web pages for new release. 2022-03-23 21:46:45 -04:00
.gitignore gitignore: add /build 2020-10-29 10:00:35 -05:00
CMakeLists.txt Updated minimum cmake version to 3.8 2022-01-15 21:14:39 -05:00
CNAME Create CNAME 2020-08-07 13:29:02 -04:00
COPYING migration tidying (build master from trunk) 2018-04-08 17:35:15 -05:00
ChangeLog migration tidying (build master from trunk) 2018-04-08 17:35:15 -05:00
INSTALL Minor corrections to SDL build/install instructions. 2020-10-21 22:54:31 -04:00
NEWS migration tidying (build master from trunk) 2018-04-08 17:35:15 -05:00
NewPPUtests.txt migration tidying (build master from trunk) 2018-04-08 17:35:15 -05:00
README Updated readmes for 2.6.4 2022-03-23 20:29:37 -04:00
STYLE-GUIDELINES-SDL migration tidying (build master from trunk) 2018-04-08 17:35:15 -05:00
TODO-SDL Updated TODO-SDL to state that old GTK GUI is retired. 2022-03-03 07:00:11 -05:00
_config.yml Added a wildcard pattern to force jekyll to include _*.js and _*.json files. 2020-12-16 23:02:51 -05:00
appveyor.yml Changed windows Qt/SDL appveyor job name so that it does not contain / char. 2021-02-09 21:03:57 -05:00
azure-pipelines.yml Added an appveyor pipeline configure file to allow for a side by side build of both the windows and linux application. 2020-05-15 16:06:18 -04:00
changelog.txt migration tidying (build master from trunk) 2018-04-08 17:35:15 -05:00
doxygen migration tidying (build master from trunk) 2018-04-08 17:35:15 -05:00
fceux.desktop fceux.desktop: use proper Exec field code (#315) 2021-02-01 00:16:01 -05:00
fceux.icns Updated MacOS Logo Icons 2021-06-15 22:13:02 -04:00
fceux.png migration tidying (build master from trunk) 2018-04-08 17:35:15 -05:00
fceux1.png Updated fceux1.png 2021-06-16 03:10:32 +03:00
index.html fix an old tasvideos link 2021-11-21 14:29:45 -05:00
readme.md Updated readmes for 2.6.4 2022-03-23 20:29:37 -04:00
resources.qrc Implemented piano roll save/load state functionality for Qt GUI. Fixed periodic autosave for Qt Tas editor. 2021-11-28 18:56:22 -05:00

readme.md

fceux Build status

An open source NES Emulator for Windows and Unix that features solid emulation accuracy and state of the art tools for power users. For some reason casual gamers use it too.

Builds and Releases

Interim builds:

But you might like mesen more: https://github.com/SourMesen/Mesen

You should get releases from here: https://sourceforge.net/projects/fceultra/files/

That's because github forces us to use tags we don't have for releases.

2.6.4 is the most recent release but most people are using the autobuilds.