Code Monkey home page Code Monkey logo

snes9x2010's People

Contributors

alcaro avatar aliaspider avatar andrasbiro avatar andres-asm avatar apollolux avatar bananarama203 avatar brunnis avatar catalystg avatar deltabeard avatar dwedit avatar fr500 avatar gregorr avatar heuripedes avatar hizzlekizzle avatar inactive123 avatar leiradel avatar loganmc10 avatar m4xw avatar matthewbauer avatar meepingsnesroms avatar netux79 avatar obecker01 avatar oggom avatar ov2 avatar tatsuya79 avatar themaister avatar toadking avatar tobiasjakobi avatar webgeek1234 avatar yoshisuga avatar

Watchers

 avatar  avatar

snes9x2010's Issues

Snes9x: Fix code formatting

The original code format for Snes9x is clear. Some new additions over the years do not adhere to this format. A .clang-format file should be written with the correct settings to automatically fix these issues.

Make required settings constant values

Settings required for good emulation should be constant. There should be no case where these settings would need to be modified by the frontend.

Settings.FrameTimePAL = 20000;
Settings.FrameTimeNTSC = 16667;
Settings.SoundPlaybackRate = 32000;
Settings.SoundInputRate = 32000;
Settings.HDMATimingHack = 100;
Settings.BlockInvalidVRAMAccessMaster = true; 

APU: Remove resampler

The native sampling rate of the SNES should be used. The frontend must handle all the required resampling. Audio should not be resampled twice, so the one within Snes9x must be removed (if it's still there).

Replace all filesystem operations with buffer operations

The core (Snes9x library) shouldn't access the filesystem directly. Instead, it should receive the allocated buffer of the loaded content in RAM from the frontend. Everything else like snapshot functionality should be done in a buffer.

This may already be the case with memstream, but at least remove references to filenames, etc.

PPU: Return correct pitch value

The correct pitch value must be returned by the PPU. It shouldn't be defined by the frontend.
Whenever a resolution change is detected, the PPU must notify the frontend before a redraw occurs via SET_GEOMETRY, and change the pitch value as required. This pitch value needn't be stored in the Settings structure.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.