Mercurial > repos > blastem
comparison README @ 1662:35c308355bfb
Updated README
author | Mike Pavone <pavone@retrodev.com> |
---|---|
date | Sun, 30 Dec 2018 23:05:39 -0800 |
parents | c3c3b65f17aa |
children | 8aeac7bd9fa7 |
comparison
equal
deleted
inserted
replaced
1661:c3c3b65f17aa | 1662:35c308355bfb |
---|---|
1 BlastEm 0.5.1 | 1 BlastEm 0.6.0 |
2 ------------- | 2 ------------- |
3 | 3 |
4 Installation | 4 Installation |
5 ------------ | 5 ------------ |
6 | 6 |
7 Extract this archive to a directory of your choosing. If you wish to change the | 7 Extract this archive to a directory of your choosing. |
8 configuration settings, copy default.cfg to $HOME/.config/blastem/blastem.cfg | |
9 and modify the copy. If you are on Windows, the config file should be placed in | |
10 %localappdata%\blastem. You may also whish to add the blastem directory to your | |
11 PATH environment variable. | |
12 | 8 |
13 NOTE: Prior to version 0.4.1, BlastEm was still using Unixy locations for config | 9 NOTE: Prior to version 0.4.1, BlastEm was still using Unixy locations for config |
14 and save files. If you're upgrading from a previous version on Windows, you will | 10 and save files. If you're upgrading from a previous version on Windows, you will |
15 need to move them manually. For config files, the relevant paths are in the | 11 need to move them manually. For config files, the relevant paths are in the |
16 previous paragraph. For save files, move all the directories found in | 12 previous paragraph. For save files, move all the directories found in |
17 %userprofile%\.local\share\blastem to %localappdata%\blastem | 13 %userprofile%\.local\share\blastem to %localappdata%\blastem |
18 | 14 |
19 Usage | 15 Usage |
20 ----- | 16 ----- |
21 | 17 |
22 This version of BlastEm has an experimental GUI that is implemented as a Genesis | 18 This version of BlastEm has a GUI that allows access to most configuration options. |
23 ROM running inside the emulator. This UI can be operated with either a mouse or | 19 Simply start BlastEm without passing a ROM filename on the command line to access |
24 the first emulated gamepad. By default, both the keyboard and the first game | 20 the main menu. You can also access the menu by hitting the button mapped to the ui.exit |
25 controller are mapped to said gamepad. For more information on bindings see the | 21 action (default Esc). |
26 Bindings section. | 22 |
23 If Open GL is disabled or unavaible, or you explicitly request it, the old ROM-based UI | |
24 will be used instead. This UI does not support configuration so you will need to modify | |
25 the configuration file manually if you use it. See the rest of this README for instructions | |
26 on modifying the configuration file. | |
27 | 27 |
28 Some operations are currently only supported through the command line. To get a | 28 Some operations are currently only supported through the command line. To get a |
29 list of supported command line options on Linux or OSX type: | 29 list of supported command line options on Linux or OSX type: |
30 | 30 |
31 ./blastem -h | 31 ./blastem -h |
147 | 147 |
148 This section lists the various "UI" actions that can be triggered by a key or | 148 This section lists the various "UI" actions that can be triggered by a key or |
149 gamepad binding. | 149 gamepad binding. |
150 | 150 |
151 ui.release_mouse Releases the mouse if it is currently captured | 151 ui.release_mouse Releases the mouse if it is currently captured |
152 ui.vdp_debug_mode Cycles through the various VDP debug views | 152 ui.plane_debug Toggles the VDP plane debug view |
153 ui.vdp_debug_pal Cycles through the selected palette when viewing | 153 ui.vram_debug Toggles the VDP VRAM debug view |
154 the VDP memory viewer | 154 ui.cram_debug Toggles the VDP CRAM debug view |
155 ui.compositing_debug Toggles the VDP compositing debug view | |
156 ui.vdp_debug_mode Cycles the mode/palette of the VDP debug view | |
157 that currently has focus | |
155 ui.enter_debugger Enters the debugger for the main CPU of the | 158 ui.enter_debugger Enters the debugger for the main CPU of the |
156 currently emulated system | 159 currently emulated system |
157 ui.screenshot Takes an internal screenshot | 160 ui.screenshot Takes an internal screenshot |
158 ui.exit Returns to the menu ROM if currently in a game | 161 ui.exit Returns to the menu ROM if currently in a game |
159 that was launched from the menu. Exits otherwise | 162 that was launched from the menu. Exits otherwise |
211 | 214 |
212 "vsync" controls whether the drawing of frames is synchronized to the monitor | 215 "vsync" controls whether the drawing of frames is synchronized to the monitor |
213 refresh rate. Valid values for this setting are "off", "on" and "tear". The | 216 refresh rate. Valid values for this setting are "off", "on" and "tear". The |
214 latter will attempt to use the "late tear" option if it's available and normal | 217 latter will attempt to use the "late tear" option if it's available and normal |
215 vsync otherwise. Currently it's recommended to leave this at the default of | 218 vsync otherwise. Currently it's recommended to leave this at the default of |
216 "off" as BlastEm synchronizes to audio and does not yet have the necessary code | 219 "off" as it may not work well with the default "audio" sync method and the |
217 to fully handle conflicts between the audio rate and monitor refresh rate. | 220 "video" sync method will automatically enable "vsync". See "Sync Source and |
218 Additionally, the "turbo" feature does not function properly with vsync | 221 VSync" for more details. |
219 enabled. These issues will be addressed in a future release. If you wish to use | |
220 vsync, please see the VSync section at the bottom of the README. | |
221 | 222 |
222 "fullscreen" controls whether BlastEm starts in fullscreen or windowed mode. | 223 "fullscreen" controls whether BlastEm starts in fullscreen or windowed mode. |
223 This can be overridden on the command line with the -f flag. If fullscreen | 224 This can be overridden on the command line with the -f flag. If fullscreen |
224 is set to "off", -f will turn it on. Conversely, if fullscreen is set to "on" | 225 is set to "off", -f will turn it on. Conversely, if fullscreen is set to "on" |
225 in the config, -f will turn it off. | 226 in the config, -f will turn it off. |
364 from a pseudo-random number generator. This option is mostly useful for | 365 from a pseudo-random number generator. This option is mostly useful for |
365 developers that want to debug initialization issues in their code. | 366 developers that want to debug initialization issues in their code. |
366 | 367 |
367 "default_region" determines the console region that will be used when region | 368 "default_region" determines the console region that will be used when region |
368 detection fails and when there are multiple valid regions. The default of 'U' | 369 detection fails and when there are multiple valid regions. The default of 'U' |
369 specifies a 60Hz "foreign" console. | 370 specifies a 60Hz "foreign" console. |
371 | |
372 "sync_source" controls whether BlastEm uses audio or video output to control | |
373 execution speed. "video" can provide a smoother experience when your display | |
374 has a similar refresh rate to the emulated system, but has some limitations | |
375 in the current version. The default value is "audio". | |
376 | |
377 "megawifi" enables or disables support for MegaWiFi cart emulation. MegaWiFi | |
378 is a cartridge that contains WiFi hardware for network functionality. Enabling | |
379 this means that ROMs potentially have access to your network (and the internet) | |
380 which obviously has security implications. For this reason, it is disabled by | |
381 default. If you wish to try out MegaWiFi emulation, set this to "on". Note that | |
382 the support for MegaWiFi hardware is preliminary in this release. | |
370 | 383 |
371 Debugger | 384 Debugger |
372 -------- | 385 -------- |
373 | 386 |
374 BlastEm has an integrated command-line debugger loosely based on GDB's | 387 BlastEm has an integrated command-line debugger loosely based on GDB's |
443 dis - 68K disassembler | 456 dis - 68K disassembler |
444 zdis - Z80 disassembler | 457 zdis - Z80 disassembler |
445 vgmplay - Very basic VGM player | 458 vgmplay - Very basic VGM player |
446 stateview - GST save state viewer | 459 stateview - GST save state viewer |
447 | 460 |
448 VSync | 461 Sync Source and VSync |
449 ----- | 462 ----- |
450 | 463 |
451 This section includes information about using VSync with BlastEm. As mentioned | 464 This section includes information about using VSync with BlastEm. Currently, |
452 above, the code is currently designed to only sync to audio and has some issues | 465 the best way to use VSync is to set the sync source to "video". This will force |
453 with VSync as a result. That said, if your computer is fast enough and you | 466 VSync on and use video output for controlling the speed of emulation. In this |
454 don't care about turbo mode, it can generally made to work. | 467 mode, audio will have it's rate automatically adjusted to keep pace with video. |
455 | 468 The code for this is still a bit immature, so you may experience dropouts or |
456 The native refresh rate of an NTSC Genesis is approximately 59.92 Hz which is | 469 pitch changes in this mode. |
457 probably not the native refresh rate of your monitor. Fortunately, it is | 470 |
458 most likely lower than your refresh rate. As long as this is true, VSync will | 471 If you experience problems, please switch back to the "audio" sync source, |
459 generally work as long as your computer is fast enough to cope with the time | 472 which is the default. You can also enable vsync when using the "audio" sync |
460 lost waiting for VSync and the audio buffer is large enough to not run out of | 473 source by changing the "vsync" setting. This will generally work okay as long |
461 samples during that delay. Latency will suffer a bit and you'll get a doubled | 474 as the emulated refresh rate is below your monitor refresh rate (even if only |
462 frame every once and a while, but generally things will be fine. | 475 slightly), but you will occassionally get a doubled frame (or frequently if |
463 | 476 the refresh rates are very different). |
464 If you enable VSync and you're getting audio dropouts, first try doubling the | 477 |
465 audio buffer setting. If you still experience dropouts, it's possible your | 478 Turbo mode will currently not work when vsync is on, regardless of which sync |
466 computer is not fast enough or that your monitor's actual refresh rate is in | 479 source is used. Slow mode will work with "audio" sync, but not "video" sync. |
467 fact lower than that of the emualted console. Not much can be done about the | 480 |
468 former (apart from disabling VSync), but the latter can be dealt with by | |
469 lowering the default speed slightly in the "clocks" section. | |
470 | |
471 A future release will support VSync in a less hacky fashion. | |
472 | |
473 Special Thanks | |
474 -------------- | 481 -------------- |
475 | 482 |
476 My work has been made much easier by the contributions of those in the Genesis | 483 My work has been made much easier by the contributions of those in the Genesis |
477 community past and present. I'd like to thank the people below for their help. | 484 community past and present. I'd like to thank the people below for their help. |
478 | 485 |