jgnes v0.4.0 - 模擬器

Zora avatar
By Zora
at 2023-05-18T09:25

Table of Contents

A cross-platform NES emulator. Has a native frontend built using SDL2 as well
as a web frontend that compiles to WASM and runs in the browser.

Changes:

Additional mappers implemented:

- BNROM (iNES mapper 34)
- NINA-001 (also iNES mapper 34)
- GxROM (iNES mapper 66)
- Jaleco JF-11 / JF-14 (iNES mapper 140)
- Bandai FCG-1 / FCG-2 (iNES mapper 16, submapper 4)
- Bandai LZ93D50 w/ X24C01 EEPROM chip (iNES mapper 159)
- Bandai LZ93D50 w/ X24C02 EEPROM chip or no writable memory (iNES mapper 16,
submapper 5)
- Bandai LZ93D50 w/ 8KB SRAM (iNES mapper 153)

Additional mapper features implemented:

- Konami VRC6 expansion audio is now slightly amplified linearly; before this
change, audio output from this mapper was very quiet compared to the builtin
- APU audio and other boards with expansion audio

Web frontend made much more featureful:

- Allow loading different ROM files without needing to refresh the page
- Add a reset button
- Add aspect ratio (NTSC / Square pixels) and image filtering options (Nearest
neighbor / Linear 1x/2x/3x); the linear 2x/3x options are implemented using
- CPU scaling because WebGL does not support GPU compute shaders
- Implement audio using the AudioWorklet API
- Implement audio sync to prevent the emulator from running too fast on high
refresh rate displays
- Implement persistent save files using local storage, and add a button to
download the save file for the currently running game
- Fix window scaling so that the window size accounts for DPI scale factor
- Disallow opposing directional inputs to be pressed simultaneously (left+right
or up+down); allowing these can cause severe glitches in some games (e.g.
Zelda 2 and Battletoads). If opposing inputs are pressed simultaneously,
left/up will be sent to the emulated NES rather than right or down
- Add a .nes file filter to the file picker dialog (previously there was no
filter at all)
- When the page is loaded, hide the UI and display "Loading..." until the WASM
is loaded and all event listeners are added

Add an option to all frontends to allow silencing the triangle wave audio
channel when it is outputting waves at ultrasonic frequencies, which can
reduce audio popping in some games (e.g. Mega Man 2)

Enable link-time optimizations for published release builds to significantly
reduce executable binary sizes

Implement a hack to fix the GUI scaling factor from defaulting to 4.5 on the
Steam Deck, which made the GUI completely unusable

A few minor performance improvements:

- Refactor audio downsampling code to avoid needing to do floating point
multiplications and divisions on every emulated CPU cycle
- In the PPU code, add a bit set storing which pixels contain any sprites to
avoid needing to loop over all sprites on the scanline on pixels that don't
contain any sprites
- Change the square wave channel sweep units to only recompute the target
period when one of their inputs changes, either the sweep config or the
phase timer period

Download:
https://github.com/jsgroth/jgnes/releases/tag/v0.4.0


https://github.com/jsgroth/jgnes

--

All Comments

reiden 上任

Delia avatar
By Delia
at 2023-05-17T20:28
跟 #1aMDaVAT 裡面所述的 讓我再把時間軸跟上任後執行上說明 =andgt; 板規依原 conpo 所訂執行,暫不作更動 讓我先說: 我不是 conpo ,我其實很冷或是很死板處理 外加我個人不是喜歡一直來信來回 (這點我真的覺得 conpo 還有那個耐心去寫情書真的很猛) 就這一點上 ...

xemu 0.7.90

Margaret avatar
By Margaret
at 2023-05-17T12:05
A free and open-source application that emulates the original Microsoft Xbox game console, enabling people to play their original Xbox games on Windows, ma ...

OpenBor Golden Axe Myth 新版

Caitlin avatar
By Caitlin
at 2023-05-16T23:48
雙截龍重製版作者Magggas 更新優化戰斧神話,甚至用於測試開發中的OpenBor iOS版 (新版用新引擎開發的) Golden Axe Myth - Route A - OpenBOR iOS (路線A) https://youtu.be/tH6oySWnaLU Golden ...

RetroBat v5.3

Wallis avatar
By Wallis
at 2023-05-16T11:22
RetroBat is a software distribution designed for emulation and to be the easiest way to enjoy your game collection on your Windows computer. The supplied E ...

經實測,ROG Ally 可輕鬆運行 PS3、PSP

Freda avatar
By Freda
at 2023-05-15T18:07
經實測,ROG Ally 可輕鬆運行 PS3、PSP、XBOX360 和 Switch 模擬器遊戲 ASUS ROG Ally 電競掌機已經發表,但正式開賣還要等到 6 月中,有預購的玩家一定非常 期待, 現在網路上有不少 PC 遊戲實測,對這台的效能不在話下,最近知名 YouTube 頻道 進行各大模擬器 ...