Skip to content

Commit 7ceed14

Browse files
Merge pull request #1007 from carmiker/master
Add documentation and links for bsnes-jg
2 parents 239dc8e + 264976e commit 7ceed14

15 files changed

+364
-1
lines changed

docs/library/beetle_bsnes.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -132,6 +132,7 @@ The Beetle bsnes core supports the following device type(s) in the controls menu
132132

133133
#### Nintendo - Sufami Turbo
134134

135+
- [Nintendo - SNES / Famicom (bsnes-jg)](bsnes-jg.md)
135136
- [Nintendo - SNES / Famicom (bsnes-mercury Accuracy)](bsnes_mercury_accuracy.md)
136137
- [Nintendo - SNES / Famicom (bsnes-mercury Balanced)](bsnes_mercury_balanced.md)
137138
- [Nintendo - SNES / Famicom (bsnes-mercury Performance)](bsnes_mercury_performance.md)
@@ -147,6 +148,7 @@ The Beetle bsnes core supports the following device type(s) in the controls menu
147148

148149
#### Nintendo - Super Nintendo Entertainment System (+Hacks)
149150

151+
- [Nintendo - SNES / Famicom (bsnes-jg)](bsnes-jg.md)
150152
- [Nintendo - SNES / Famicom (bsnes-mercury Accuracy)](bsnes_mercury_accuracy.md)
151153
- [Nintendo - SNES / Famicom (bsnes-mercury Balanced)](bsnes_mercury_balanced.md)
152154
- [Nintendo - SNES / Famicom (bsnes-mercury Performance)](bsnes_mercury_performance.md)
@@ -161,4 +163,4 @@ The Beetle bsnes core supports the following device type(s) in the controls menu
161163
- [Nintendo - SNES / Famicom (Snes9x 2002)](snes9x_2002.md)
162164
- [Nintendo - SNES / Famicom (Snes9x 2005 Plus)](snes9x_2005_plus.md)
163165
- [Nintendo - SNES / Famicom (Snes9x 2005)](snes9x_2005.md)
164-
- [Nintendo - SNES / Famicom (Snes9x 2010)](snes9x_2010.md)
166+
- [Nintendo - SNES / Famicom (Snes9x 2010)](snes9x_2010.md)

docs/library/bsnes-jg.md

Lines changed: 336 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,336 @@
1+
# Nintendo - SNES / Famicom (bsnes-jg)
2+
3+
## Background
4+
5+
bsnes-jg is a cycle accurate emulator for the Super Famicom/Super Nintendo
6+
Entertainment System, including support for the Super Game Boy, BS-X
7+
Satellaview, and Sufami Turbo.
8+
9+
This is a fork of bsnes v115. Many changes have been made post-fork:
10+
- Higher quality resampler with settings
11+
- Improved performance without loss of accuracy
12+
- Portability improvements
13+
- Removal of accuracy-reducing hacks and unnecessary code
14+
- Significant increase in standards compliance
15+
- Translation to the C++ Standard Library (ISO C++11)
16+
17+
### Author/License
18+
19+
The bsnes-jg core has been authored by
20+
21+
- byuu
22+
- [Rupert Carmichael (carmiker)](https://github.com/carmiker)
23+
24+
The bsnes-jg core is licensed under
25+
26+
- [GPLv3](https://github.com/libretro/bsnes-jg/blob/libretro/COPYING)
27+
28+
A summary of the licenses behind RetroArch and its cores can be found [here](../development/licenses.md).
29+
30+
## Extensions
31+
32+
Content that can be loaded by the bsnes-jg core have the following file extensions:
33+
34+
- .sfc
35+
- .smc
36+
- .gb
37+
- .gbc
38+
- .st
39+
- .bs
40+
41+
## BIOS
42+
43+
Required or optional firmware files go in the frontend's system directory.
44+
45+
| Filename | Description | md5sum |
46+
|:-----------------:|:--------------------------------------:|:--------------------------------:|
47+
| dsp1.data.rom | DSP1 co-processor firmware | 3d81b45fa0c2aa8b852dfb1ece7c0971 |
48+
| dsp1.program.rom | DSP1 co-processor firmware | ae209fbe789fbf11a48aea5ab1197321 |
49+
| dsp1b.data.rom | DSP1B co-processor firmware | 1e3f568634a7d8284020dddc0ae905bc |
50+
| dsp1b.program.rom | DSP1B co-processor firmware | d10f446888e097cbf500f3f663cf4f6d |
51+
| dsp2.data.rom | DSP2 co-processor firmware | e9417e29223b139c3c4b635a2a3b8744 |
52+
| dsp2.program.rom | DSP2 co-processor firmware | aa6e5922a3ed5ded54f24247c11143c5 |
53+
| dsp3.data.rom | DSP3 co-processor firmware | 0a81210c0a940b997dd9843281008ee6 |
54+
| dsp3.program.rom | DSP3 co-processor firmware | d99ca4562818d49cee1f242705bba6f8 |
55+
| dsp4.data.rom | DSP4 co-processor firmware | ee4990879eb68e3cbca239c5bc20303d |
56+
| dsp4.program.rom | DSP4 co-processor firmware | a151023b948b90ffc23a5b594bb6fef2 |
57+
| cx4.data.rom | CX4 co-processor firmware | 037ac4296b6b6a5c47c440188d3c72e3 |
58+
| st010.data.rom | ST010 co-processor firmware | 254d70762b6f59f99c27c395aba7d07d |
59+
| st010.program.rom | ST010 co-processor firmware | 1d70019179a59a566a0bb5d3f2845544 |
60+
| st011.data.rom | ST011 co-processor firmware | 10bd3f4aa949737ab9836512c35bcc29 |
61+
| st011.program.rom | ST011 co-processor firmware | 95222ebf1c0c2990bcf25db43743f032 |
62+
| st018.data.rom | ST018 co-processor firmware | 49c898b60d0f15e90d0ba780dd12f366 |
63+
| st018.program.rom | ST018 co-processor firmware | dda40ccd57390c96e49d30a041f9a9e7 |
64+
65+
## Features
66+
67+
Frontend-level settings or features that the bsnes-jg core respects.
68+
69+
| Feature | Supported |
70+
|-------------------|:---------:|
71+
| Restart ||
72+
| Screenshots ||
73+
| Saves ||
74+
| States ||
75+
| Rewind ||
76+
| Netplay ||
77+
| Core Options ||
78+
| RetroAchievements ||
79+
| RetroArch Cheats ||
80+
| Native Cheats ||
81+
| Controls ||
82+
| Remapping ||
83+
| Multi-Mouse ||
84+
| Rumble ||
85+
| Sensors ||
86+
| Camera ||
87+
| Location ||
88+
| Subsystem ||
89+
| [Softpatching](../guides/softpatching.md) ||
90+
| Disk Control ||
91+
| Username ||
92+
| Language ||
93+
| Crop Overscan ||
94+
| LEDs ||
95+
96+
### Directories
97+
98+
The bsnes-jg core's library name is 'bsnes-jg'
99+
100+
The bsnes-jg core saves/loads to/from these directories.
101+
102+
**Frontend's Save directory**
103+
104+
| File | Description |
105+
|:-----:|:-----------------------------:|
106+
| *.srm | Cartridge-based battery saves |
107+
| *.rtc | Real Time Clock data |
108+
109+
**Frontend's State directory**
110+
111+
| File | Description |
112+
|:--------:|:-----------:|
113+
| *.state# | State |
114+
115+
### Geometry and timing
116+
117+
- The bsnes-jg core's core provided FPS is 60.098812 for NTSC games and 50.006979 for PAL games.
118+
- The bsnes-jg core's core provided sample rate is 48000Hz
119+
- The bsnes-jg core provides adjustable overscan and aspect ratio options.
120+
121+
## Subsystems
122+
123+
bsnes-jg supports Super Game Boy, BS-X Satellaview, and Sufami Turbo via the Subsystem API.
124+
125+
For Super Game Boy, you will need a Game Boy ROM (.gb/gbc) and Super Game Boy ROM.
126+
127+
For BS-X Satellaview, you will need a BS Memory dump (.bs) and BS-X BIOS ROM.
128+
129+
For Sufami Turbo (1 or 2 Carts), you will need Sufami Turbo ROMs (.st) and the Sufami Turbo ROM.
130+
131+
| Subsystem | Description |
132+
|:---------:|:-----------------------------:|
133+
| sgb | Super Game Boy |
134+
| bsx | BS-X Satellaview |
135+
| sufami | Sufami Turbo (One Cart) |
136+
| sufami2 | Sufami Turbo (Two Carts) |
137+
138+
139+
**Command Line**
140+
141+
```
142+
retroarch -L {path to bsnes core} {path to Super GameBoy ROM} --subsystem sgb {path to GameBoy rom}
143+
```
144+
145+
**RetroArch GUI**
146+
147+
Load the Game Boy ROM through 'Load SuperGame Boy' in RetroArch's Main Menu.
148+
149+
![](../image/core/bsnes/menu1.png)
150+
151+
![](../image/core/bsnes/gb.png)
152+
153+
Next, load the Super Game Boy BIOS ROM through 'Load Super GameBoy' in RetroArch's Menu Menu.
154+
155+
![](../image/core/bsnes/menu2.png)
156+
157+
![](../image/core/bsnes/sgb.png)
158+
159+
Then, start the content by selecting 'Start GameBoy' In RetroArch's Menu Menu.
160+
161+
![](../image/core/bsnes/start.png)
162+
163+
## MSU-1
164+
165+
MSU-1 is supported. To load an MSU-1 enhanced ROM, simply load the .sfc which resides in the same directory as the .msu and audio tracks.
166+
167+
## Core options
168+
169+
- **Delay LLE Coprocessor Sync (Restart)** [bsnes_jg_coproc_delaysync] (**Off**|On)
170+
171+
Delay sync when using Low Level Coprocessor Emulation for more speed at the cost of accuracy
172+
173+
- **Prefer HLE Coprocessor Emulation (Restart)** [bsnes_jg_coproc_preferhle] (**Off**|On)
174+
175+
Delay sync when using Low Level Coprocessor Emulation for more speed at the cost of accuracy
176+
177+
- **Hotfixes (Restart)** [bsnes_jg_hotfixes] (**Off**|On)
178+
179+
Apply hotfixes when playing a handful of games released with major bugs (which are exhibited on real hardware). Games in question: Dirt Racer, Magical Drop, Rendering Ranger R2
180+
181+
- **Internal Run-Ahead** [bsnes_jg_runahead] (**0**|1|2|3|4)
182+
183+
Simulate the system ahead of time and roll back to reduce input latency. Has very high system requirements.
184+
185+
- **Resampler Quality (Restart)** [bsnes_jg_rsqual] (**Fast**|Medium|Best)
186+
187+
Set the internal resampler's quality level (you may hear a difference if you use pro audio equipment and your imagination)
188+
189+
- **SPC Interpolation Algorithm** [bsnes_jg_spc_interp] (**Gaussian**|Sinc)
190+
191+
Set the emulated sound chip sample interpolation algorithm: Gaussian is considered more accurate, while Sinc is cleaner, but still produces very accurate output.
192+
193+
- **Aspect Ratio** [bsnes_jg_aspect] (**Auto**|1:1|8:7|11:8|4:3)
194+
195+
Set the Aspect Ratio
196+
197+
- **Mask Overscan (Top)** [bsnes_jg_overscan_t] (0|4|**8**|12|16|20)
198+
199+
Mask off pixels hidden by a bezel or border on original CRTs (top)
200+
201+
- **Mask Overscan (Bottom)** [bsnes_jg_overscan_b] (0|4|**8**|12|16|20|21)
202+
203+
Mask off pixels hidden by a bezel or border on original CRTs (bottom)
204+
205+
- **Mask Overscan (Left)** [bsnes_jg_overscan_l] (0|4|**8**|12|16|20)
206+
207+
Mask off pixels hidden by a bezel or border on original CRTs (left)
208+
209+
- **Mask Overscan (Right)** [bsnes_jg_overscan_r] (0|4|**8**|12|16|20)
210+
211+
Mask off pixels hidden by a bezel or border on original CRTs (right)
212+
213+
- **Colour Adjustment - Luminance** [bsnes_jg_luminance] (0%|10%|20%|30%|40%|50%|60%|70%|80%|90%|**100%**)
214+
215+
Adjust Luminance
216+
217+
- **Colour Adjustment - Saturation** [bsnes_jg_saturation] (0%|10%|20%|30%|40%|50%|60%|70%|80%|90%|**100%**|110%|120%|130%|140%|150%|160%|170%|180%|190%|200%)
218+
219+
Adjust Saturation
220+
221+
- **Colour Adjustment - Gamma** [bsnes_jg_gamma] (100%|110%|**120%**|130%|140%|150%|160%|170%|180%|190%|200%)
222+
223+
Adjust Gamma
224+
225+
- **Competition Timer** [bsnes_jg_competition_timer] (3 Minutes|4 Minutes|5 Minutes|**6 Minutes**|7 Minutes|8 Minutes|9 Minutes|10 Minutes|11 Minutes|12 Minutes|13 Minutes|14 Minutes|15 Minutes|16 Minutes|17 Minutes|18 Minutes)
226+
227+
Set the gameplay time for competition boards such as Campus Challenge '92 and PowerFest '94
228+
229+
230+
## Controllers
231+
232+
The bsnes-jg core supports the following device type(s) in the controls menu, bolded device types are the default for the specified user(s):
233+
234+
### User 1 device types
235+
236+
- **[Gamepad](http://nintendo.wikia.com/wiki/Super_Nintendo_Entertainment_System_controller)** - Gamepad
237+
- [SNES Mouse](https://en.wikipedia.org/wiki/Super_NES_Mouse) - Mouse
238+
239+
### User 2 device types
240+
241+
- **[Gamepad](http://nintendo.wikia.com/wiki/Super_Nintendo_Entertainment_System_controller)** - Gamepad
242+
- [SNES Mouse](https://en.wikipedia.org/wiki/Super_NES_Mouse) - Mouse
243+
- [Multitap](http://nintendo.wikia.com/wiki/Super_Multitap) - Gamepad - Allows for up to five players to play together in multitap games.
244+
- [SuperScope](https://en.wikipedia.org/wiki/Super_Scope) - Lightgun
245+
- [Justifier](https://en.wikipedia.org/wiki/Konami_Justifier) - Lightgun
246+
247+
### Multitap support
248+
249+
Activating multitap support in compatible games can be configured by switching to the [Multitap device type](#controllers) for User 2.
250+
251+
### Controller tables
252+
253+
#### Gamepad
254+
255+
![](../image/controller/snes.png)
256+
257+
| User 1 - 5 Remap descriptors | RetroPad Inputs |
258+
|------------------------------|---------------------------------------------|
259+
| B | ![](../image/retropad/retro_b.png) |
260+
| Y | ![](../image/retropad/retro_y.png) |
261+
| Select | ![](../image/retropad/retro_select.png) |
262+
| Start | ![](../image/retropad/retro_start.png) |
263+
| D-Pad Up | ![](../image/retropad/retro_dpad_up.png) |
264+
| D-Pad Down | ![](../image/retropad/retro_dpad_down.png) |
265+
| D-Pad Left | ![](../image/retropad/retro_dpad_left.png) |
266+
| D-Pad Right | ![](../image/retropad/retro_dpad_right.png) |
267+
| A | ![](../image/retropad/retro_a.png) |
268+
| X | ![](../image/retropad/retro_x.png) |
269+
| L | ![](../image/retropad/retro_l1.png) |
270+
| R | ![](../image/retropad/retro_r1.png) |
271+
272+
#### Mouse
273+
274+
| RetroMouse Inputs | SNES Mouse |
275+
|-------------------------------------------------------|---------------------------|
276+
| ![](../image/retromouse/retro_mouse.png) Mouse Cursor | SNES Mouse Cursor |
277+
| ![](../image/retromouse/retro_left.png) Mouse 1 | SNES Mouse Left Button |
278+
| ![](../image/retromouse/retro_right.png) Mouse 2 | SNES Mouse Right Button |
279+
280+
#### Lightgun
281+
282+
| RetroLightgun Inputs | SuperScope | Justifier(s) |
283+
|--------------------------------------------------------|---------------------------|---------------------|
284+
| ![](../image/retromouse/retro_mouse.png) Gun Crosshair | SuperScope Crosshair | Justifier Crosshair |
285+
| Gun Trigger | SuperScope Trigger | Justifier Trigger |
286+
| Gun Aux A | SuperScope Cursor | |
287+
| Gun Aux B | SuperScope Turbo | |
288+
| Gun Start | SuperScope Pause | Justifier Start |
289+
290+
## Compatibility
291+
292+
The bsnes-jg core is compatible with all officially released SNES/SFC titles.
293+
294+
## External Links
295+
296+
- [Upstream bsnes-jg Repository](https://gitlab.com/jgemu/bsnes-jg)
297+
- [Libretro bsnes-jg Core info file](https://github.com/libretro/libretro-super/blob/master/dist/info/bsnes-jg_libretro.info)
298+
- [Libretro bsnes-jg Repository](https://github.com/libretro/bsnes-jg)
299+
- [Report bsnes-jg Core Issues Here](https://github.com/libretro/bsnes-jg/issues)
300+
301+
### See also
302+
303+
#### Nintendo - Sufami Turbo
304+
305+
- [Nintendo - SNES / Famicom (Beetle bsnes)](beetle_bsnes.md)
306+
- [Nintendo - SNES / Famicom (bsnes-mercury Accuracy)](bsnes_mercury_accuracy.md)
307+
- [Nintendo - SNES / Famicom (bsnes-mercury Balanced)](bsnes_mercury_balanced.md)
308+
- [Nintendo - SNES / Famicom (bsnes-mercury Performance)](bsnes_mercury_performance.md)
309+
- [Nintendo - SNES / Famicom (bsnes Accuracy)](bsnes_accuracy.md)
310+
- [Nintendo - SNES / Famicom (bsnes Balanced)](bsnes_balanced.md)
311+
- [Nintendo - SNES / Famicom (bsnes C++98 (v085))](bsnes_cplusplus98.md)
312+
- [Nintendo - SNES / Famicom (bsnes Performance)](bsnes_performance.md)
313+
- [Nintendo - SNES / Famicom (Snes9x)](snes9x.md)
314+
- [Nintendo - SNES / Famicom (Snes9x 2002)](snes9x_2002.md)
315+
- [Nintendo - SNES / Famicom (Snes9x 2005 Plus)](snes9x_2005_plus.md)
316+
- [Nintendo - SNES / Famicom (Snes9x 2005)](snes9x_2005.md)
317+
- [Nintendo - SNES / Famicom (Snes9x 2010)](snes9x_2010.md)
318+
319+
#### Nintendo - Super Nintendo Entertainment System (+ Hacks)
320+
321+
- [Nintendo - SNES / Famicom (Beetle bsnes)](beetle_bsnes.md)
322+
- [Nintendo - SNES / Famicom (bsnes-mercury Accuracy)](bsnes_mercury_accuracy.md)
323+
- [Nintendo - SNES / Famicom (bsnes-mercury Balanced)](bsnes_mercury_balanced.md)
324+
- [Nintendo - SNES / Famicom (bsnes-mercury Performance)](bsnes_mercury_performance.md)
325+
- [Nintendo - SNES / Famicom (bsnes Accuracy)](bsnes_accuracy.md)
326+
- [Nintendo - SNES / Famicom (bsnes Balanced)](bsnes_balanced.md)
327+
- [Nintendo - SNES / Famicom (bsnes C++98 (v085))](bsnes_cplusplus98.md)
328+
- [Nintendo - SNES / Famicom (bsnes Performance)](bsnes_performance.md)
329+
- [Nintendo - SNES / Famicom (higan Accuracy)](higan_accuracy.md)
330+
- [Nintendo - SNES / Famicom (nSide Balanced)](nside_balanced.md)
331+
- [Nintendo - SNES / Famicom (Mesen-S)](mesen-s.md)
332+
- [Nintendo - SNES / Famicom (Snes9x)](snes9x.md)
333+
- [Nintendo - SNES / Famicom (Snes9x 2002)](snes9x_2002.md)
334+
- [Nintendo - SNES / Famicom (Snes9x 2005 Plus)](snes9x_2005_plus.md)
335+
- [Nintendo - SNES / Famicom (Snes9x 2005)](snes9x_2005.md)
336+
- [Nintendo - SNES / Famicom (Snes9x 2010)](snes9x_2010.md)

docs/library/bsnes_accuracy.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -265,6 +265,7 @@ The bsnes Accuracy core fully emulates all SNES games that have ever been offici
265265
#### Nintendo - Sufami Turbo
266266

267267
- [Nintendo - SNES / Famicom (Beetle bsnes)](beetle_bsnes.md)
268+
- [Nintendo - SNES / Famicom (bsnes-jg)](bsnes-jg.md)
268269
- [Nintendo - SNES / Famicom (bsnes-mercury Accuracy)](bsnes_mercury_accuracy.md)
269270
- [Nintendo - SNES / Famicom (bsnes-mercury Balanced)](bsnes_mercury_balanced.md)
270271
- [Nintendo - SNES / Famicom (bsnes-mercury Performance)](bsnes_mercury_performance.md)
@@ -280,6 +281,7 @@ The bsnes Accuracy core fully emulates all SNES games that have ever been offici
280281
#### Nintendo - Super Nintendo Entertainment System (+ Hacks)
281282

282283
- [Nintendo - SNES / Famicom (Beetle bsnes)](beetle_bsnes.md)
284+
- [Nintendo - SNES / Famicom (bsnes-jg)](bsnes-jg.md)
283285
- [Nintendo - SNES / Famicom (bsnes-mercury Accuracy)](bsnes_mercury_accuracy.md)
284286
- [Nintendo - SNES / Famicom (bsnes-mercury Balanced)](bsnes_mercury_balanced.md)
285287
- [Nintendo - SNES / Famicom (bsnes-mercury Performance)](bsnes_mercury_performance.md)

docs/library/bsnes_balanced.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -267,6 +267,7 @@ Activating multitap support in compatible games can be configured by switching t
267267
#### Nintendo - Sufami Turbo
268268

269269
- [Nintendo - SNES / Famicom (Beetle bsnes)](beetle_bsnes.md)
270+
- [Nintendo - SNES / Famicom (bsnes-jg)](bsnes-jg.md)
270271
- [Nintendo - SNES / Famicom (bsnes-mercury Accuracy)](bsnes_mercury_accuracy.md)
271272
- [Nintendo - SNES / Famicom (bsnes-mercury Balanced)](bsnes_mercury_balanced.md)
272273
- [Nintendo - SNES / Famicom (bsnes-mercury Performance)](bsnes_mercury_performance.md)
@@ -282,6 +283,7 @@ Activating multitap support in compatible games can be configured by switching t
282283
#### Nintendo - Super Nintendo Entertainment System (+ Hacks)
283284

284285
- [Nintendo - SNES / Famicom (Beetle bsnes)](beetle_bsnes.md)
286+
- [Nintendo - SNES / Famicom (bsnes-jg)](bsnes-jg.md)
285287
- [Nintendo - SNES / Famicom (bsnes-mercury Accuracy)](bsnes_mercury_accuracy.md)
286288
- [Nintendo - SNES / Famicom (bsnes-mercury Balanced)](bsnes_mercury_balanced.md)
287289
- [Nintendo - SNES / Famicom (bsnes-mercury Performance)](bsnes_mercury_performance.md)

0 commit comments

Comments
 (0)