Mercurial > repos > blastem
annotate README @ 1470:1e3e0205640f
Add support for writeable ROM and an entry for Game no Kanzume Otokuyou using that support as it expects the cart area to be writable
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Sat, 14 Oct 2017 05:03:38 -0700 |
parents | 59e1dbb795a7 |
children | c3c3b65f17aa |
rev | line source |
---|---|
1442
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
1 BlastEm 0.5.1 |
468 | 2 ------------- |
3 | |
4 Installation | |
5 ------------ | |
6 | |
808
2953708d02af
Update README, CHANGELOG and version string for 0.3.1
Michael Pavone <pavone@retrodev.com>
parents:
785
diff
changeset
|
7 Extract this archive to a directory of your choosing. If you wish to change the |
1066 | 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 | |
13 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 | |
15 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 | |
17 %userprofile%\.local\share\blastem to %localappdata%\blastem | |
468 | 18 |
808
2953708d02af
Update README, CHANGELOG and version string for 0.3.1
Michael Pavone <pavone@retrodev.com>
parents:
785
diff
changeset
|
19 Usage |
2953708d02af
Update README, CHANGELOG and version string for 0.3.1
Michael Pavone <pavone@retrodev.com>
parents:
785
diff
changeset
|
20 ----- |
2953708d02af
Update README, CHANGELOG and version string for 0.3.1
Michael Pavone <pavone@retrodev.com>
parents:
785
diff
changeset
|
21 |
1013 | 22 This version of BlastEm has an experimental GUI that is implemented as a Genesis |
23 ROM running inside the emulator. This UI can be operated with either a mouse or | |
24 the first emulated gamepad. By default, both the keyboard and the first game | |
25 controller are mapped to said gamepad. For more information on bindings see the | |
26 Bindings section. | |
27 | |
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: | |
808
2953708d02af
Update README, CHANGELOG and version string for 0.3.1
Michael Pavone <pavone@retrodev.com>
parents:
785
diff
changeset
|
30 |
1066 | 31 ./blastem -h |
32 | |
808
2953708d02af
Update README, CHANGELOG and version string for 0.3.1
Michael Pavone <pavone@retrodev.com>
parents:
785
diff
changeset
|
33 From within your BlastEm directory. On Windows type: |
1066 | 34 |
35 blastem.exe -h | |
36 | |
1017
216fa63749b3
Added documentation for lock-on support and a fullscreen config option.
Michael Pavone <pavone@retrodev.com>
parents:
1014
diff
changeset
|
37 Lock-On Support |
216fa63749b3
Added documentation for lock-on support and a fullscreen config option.
Michael Pavone <pavone@retrodev.com>
parents:
1014
diff
changeset
|
38 --------------- |
216fa63749b3
Added documentation for lock-on support and a fullscreen config option.
Michael Pavone <pavone@retrodev.com>
parents:
1014
diff
changeset
|
39 |
216fa63749b3
Added documentation for lock-on support and a fullscreen config option.
Michael Pavone <pavone@retrodev.com>
parents:
1014
diff
changeset
|
40 This version of BlastEm has some preliminary support for Sonic & Knuckles lock |
1442
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
41 on technology. This is available via both the menu and the command line. To use |
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
42 it from the menu, first load Sonic & Knuckles normally. Enter the menu (mapped |
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
43 to the Escape key by default) and select the "Lock On" option to select a ROM |
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
44 to lock on. The system will then reload with the combined game. To use it from |
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
45 the command line, specify the Sonic & Knuckles ROM as the primary ROM and |
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
46 specify the ROM to be locked on using the -o option. As an example: |
1017
216fa63749b3
Added documentation for lock-on support and a fullscreen config option.
Michael Pavone <pavone@retrodev.com>
parents:
1014
diff
changeset
|
47 |
1066 | 48 ./blastem ~/romz/sonic_and_knuckles.bin -o ~/romz/sonic3.bin |
49 | |
1442
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
50 Please note that Sonic 2 lock-on does not work at this time. |
808
2953708d02af
Update README, CHANGELOG and version string for 0.3.1
Michael Pavone <pavone@retrodev.com>
parents:
785
diff
changeset
|
51 |
468 | 52 Configuration |
53 ------------- | |
54 | |
1066 | 55 Configuration is read from the file at $HOME/.config/blastem/blastem.cfg on |
56 Unix-like systems and %localappdata%\blastem\blastem.cfg if it exists. | |
57 Othwerise it is read from default.cfg from the same directory as the BlastEm | |
58 executable. Sections are denoted by a section name followed by an open curly | |
59 bracket, the section's contents and a closing curly bracket. Individual | |
468 | 60 configuration values are set by entering the value's name followed by a space |
61 or tab and followed by the desired value. | |
62 | |
63 Bindings | |
64 -------- | |
65 | |
66 The keys subsection of bindings maps keyboard keys to gamepad buttons or UI | |
67 actions. The key name goes on the left and the action is on the right. | |
1066 | 68 Most keys are named for the character they produce when pressed. For keys that |
69 don't correspond to a normal character, check the list below: | |
70 | |
71 Name | Description | |
72 ----------------- | |
73 up Up arrow | |
74 down Down arrow | |
75 left Left arrow | |
76 right Right arrow | |
77 space | |
78 tab | |
79 backspace Backspace on PC keyboards, Delete on Mac keyboards | |
80 esc | |
81 delete | |
82 lshift Left shift | |
83 rshift Right shift | |
84 lctrl Left control | |
85 rctrl Right control | |
86 lalt Left alt on PC keyboards, Option on Mac keyboards | |
87 ralt Right alt on PC keyboards, Option on Mac keyboards | |
88 home | |
89 end | |
90 pageup | |
91 pagedown | |
92 f1 | |
93 f2 | |
94 f3 | |
95 f4 | |
96 f5 | |
97 f6 | |
98 f7 | |
99 f8 | |
100 f9 | |
101 f10 | |
102 f11 | |
103 f12 | |
104 select | |
105 play | |
106 search | |
107 back | |
468 | 108 |
1227
262c0ce8f586
WIP update to README for 0.5.0
Michael Pavone <pavone@retrodev.com>
parents:
1069
diff
changeset
|
109 The pads subsection is used to map gamepads and joysticks. Gamepads that are |
262c0ce8f586
WIP update to README for 0.5.0
Michael Pavone <pavone@retrodev.com>
parents:
1069
diff
changeset
|
110 recognized, can have their buttons and axes mapped with semantic names. |
262c0ce8f586
WIP update to README for 0.5.0
Michael Pavone <pavone@retrodev.com>
parents:
1069
diff
changeset
|
111 Xbox 360, PS4 and PS3 style names are supported. Unrecognized gamepads can be |
262c0ce8f586
WIP update to README for 0.5.0
Michael Pavone <pavone@retrodev.com>
parents:
1069
diff
changeset
|
112 mapped using numeric button and axis ids. The following button names are |
262c0ce8f586
WIP update to README for 0.5.0
Michael Pavone <pavone@retrodev.com>
parents:
1069
diff
changeset
|
113 recognized by BlastEm: |
262c0ce8f586
WIP update to README for 0.5.0
Michael Pavone <pavone@retrodev.com>
parents:
1069
diff
changeset
|
114 a, cross |
262c0ce8f586
WIP update to README for 0.5.0
Michael Pavone <pavone@retrodev.com>
parents:
1069
diff
changeset
|
115 b, circle |
262c0ce8f586
WIP update to README for 0.5.0
Michael Pavone <pavone@retrodev.com>
parents:
1069
diff
changeset
|
116 x, square |
262c0ce8f586
WIP update to README for 0.5.0
Michael Pavone <pavone@retrodev.com>
parents:
1069
diff
changeset
|
117 y, trinagle |
262c0ce8f586
WIP update to README for 0.5.0
Michael Pavone <pavone@retrodev.com>
parents:
1069
diff
changeset
|
118 start, options |
262c0ce8f586
WIP update to README for 0.5.0
Michael Pavone <pavone@retrodev.com>
parents:
1069
diff
changeset
|
119 back, select, share |
262c0ce8f586
WIP update to README for 0.5.0
Michael Pavone <pavone@retrodev.com>
parents:
1069
diff
changeset
|
120 guide |
262c0ce8f586
WIP update to README for 0.5.0
Michael Pavone <pavone@retrodev.com>
parents:
1069
diff
changeset
|
121 leftbutton, l1 |
262c0ce8f586
WIP update to README for 0.5.0
Michael Pavone <pavone@retrodev.com>
parents:
1069
diff
changeset
|
122 rightbutton, r1 |
262c0ce8f586
WIP update to README for 0.5.0
Michael Pavone <pavone@retrodev.com>
parents:
1069
diff
changeset
|
123 leftstick, l3 |
262c0ce8f586
WIP update to README for 0.5.0
Michael Pavone <pavone@retrodev.com>
parents:
1069
diff
changeset
|
124 rightstick, r3 |
262c0ce8f586
WIP update to README for 0.5.0
Michael Pavone <pavone@retrodev.com>
parents:
1069
diff
changeset
|
125 The following axis names are recognized by BlastEm: |
262c0ce8f586
WIP update to README for 0.5.0
Michael Pavone <pavone@retrodev.com>
parents:
1069
diff
changeset
|
126 leftx |
262c0ce8f586
WIP update to README for 0.5.0
Michael Pavone <pavone@retrodev.com>
parents:
1069
diff
changeset
|
127 lefty |
262c0ce8f586
WIP update to README for 0.5.0
Michael Pavone <pavone@retrodev.com>
parents:
1069
diff
changeset
|
128 rightx |
262c0ce8f586
WIP update to README for 0.5.0
Michael Pavone <pavone@retrodev.com>
parents:
1069
diff
changeset
|
129 righty |
262c0ce8f586
WIP update to README for 0.5.0
Michael Pavone <pavone@retrodev.com>
parents:
1069
diff
changeset
|
130 lefttrigger, l2 |
262c0ce8f586
WIP update to README for 0.5.0
Michael Pavone <pavone@retrodev.com>
parents:
1069
diff
changeset
|
131 righttrigger, r2 |
262c0ce8f586
WIP update to README for 0.5.0
Michael Pavone <pavone@retrodev.com>
parents:
1069
diff
changeset
|
132 |
1013 | 133 |
134 The mice subsection is used to map mice to emulated Mega/Sega mice. The default | |
135 configuration maps both the first and second host mice to the first emulated | |
136 mouse. This should not need modification for most users. | |
137 | |
138 One special mapping deserves a mention. By default, the 'r' key is mapped to | |
139 ui.release_mouse. When operating in windowed mode the mouse has a capture | |
140 behavior. Mouse events are ignored until you click in the window. The mouse | |
141 will then be "captured" and the cursor will be both made invisible and locked | |
142 to the window. The ui.release_mouse binding releases the mouse so it can be | |
143 used normally. | |
144 | |
1353
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
145 UI Actions |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
146 ---------- |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
147 |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
148 This section lists the various "UI" actions that can be triggered by a key or |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
149 gamepad binding. |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
150 |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
151 ui.release_mouse Releases the mouse if it is currently captured |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
152 ui.vdp_debug_mode Cycles through the various VDP debug views |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
153 ui.vdp_debug_pal Cycles through the selected palette when viewing |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
154 the VDP memory viewer |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
155 ui.enter_debugger Enters the debugger for the main CPU of the |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
156 currently emulated system |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
157 ui.screenshot Takes an internal screenshot |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
158 ui.exit Returns to the menu ROM if currently in a game |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
159 that was launched from the menu. Exits otherwise |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
160 ui.save_state Saves a savestate to the quicksave slot |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
161 ui.set_speed.N Selects a specific machine speed specified by N |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
162 which should be a number between 0-9. Speeds are |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
163 specified in the "clocks" section of the config |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
164 ui.next_speed Selects the next machine speed |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
165 ui.prev_speed Selects the previous machine speed |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
166 ui.toggle_fullscreen Toggles between fullscreen and windowed mode |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
167 ui.soft_reset Resets a portion of the emulated machine |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
168 Equivalent to pushing the reset button on the |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
169 emulated device |
1442
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
170 ui.reload Reloads the current ROM from a file and performs |
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
171 a hard reset of the emulated device |
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
172 ui.sms_pause Triggers a press of the pause button when in SMS |
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
173 mode |
1353
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
174 ui.toggle_keyboard_captured Toggles the capture state of the host keyboard |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
175 when an emulated keyboard is present |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
176 |
1013 | 177 IO |
178 -- | |
179 | |
180 This section controls which peripherals are attached to the emulated console. | |
181 IO assignments can be overridden by the ROM database when appropriate. For | |
182 instance, games with mouse support can automatically use the mouse and games | |
183 that only support 3-button pads can automatically force an appropriate pad. | |
184 Unforunately, the ROM database is not yet exhaustive so manual configuration | |
185 may be needed here in some cases. | |
468 | 186 |
187 Video | |
188 ----- | |
189 | |
1013 | 190 The video section contains settings that affect the visual output of BlastEm. |
191 | |
1353
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
192 "aspect" is used to control the aspect ratio of the emulated display. The |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
193 default of 4:3 matches that of a standard definition television. |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
194 |
1442
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
195 "width" is used to control the window width when not in fullscreen mode. |
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
196 |
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
197 "height" is used to control the window height when not in fullscreen mode. If |
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
198 left unspecified, it will be calculated from "width" and "aspect". |
1013 | 199 |
200 "vertex_shader" and "fragment_shader" define the GLSL shader program that | |
201 produces the final image for each frame. Shaders can be used to add various | |
202 visual effects or enhancements. Currently BlastEm only ships with the default | |
1442
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
203 shader and a "subtle" crt shader. If you write your own shaders, place them in |
1013 | 204 $HOME/.config/blastem/shaders and then specify the basename of the new shader |
205 files in the "vertex_shader" and "fragment_shader" config options. Note that | |
206 shaders are not available in the SDL fallback renderer. | |
207 | |
208 "scanlines" controls whether there is any emulation of the gaps between display | |
209 lines that are present when driving a CRT television with a 240p signal. This | |
210 emulation is very basic at the moment so this option is off by default. | |
211 | |
212 "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 | |
214 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 | |
216 "off" as BlastEm synchronizes to audio and does not yet have the necessary code | |
217 to fully handle conflicts between the audio rate and monitor refresh rate. | |
218 Additionally, the "turbo" feature does not function properly with vsync | |
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. | |
468 | 221 |
1017
216fa63749b3
Added documentation for lock-on support and a fullscreen config option.
Michael Pavone <pavone@retrodev.com>
parents:
1014
diff
changeset
|
222 "fullscreen" controls whether BlastEm starts in fullscreen or windowed mode. |
216fa63749b3
Added documentation for lock-on support and a fullscreen config option.
Michael Pavone <pavone@retrodev.com>
parents:
1014
diff
changeset
|
223 This can be overridden on the command line with the -f flag. If fullscreen |
216fa63749b3
Added documentation for lock-on support and a fullscreen config option.
Michael Pavone <pavone@retrodev.com>
parents:
1014
diff
changeset
|
224 is set to "off", -f will turn it on. Conversely, if fullscreen is set to "on" |
216fa63749b3
Added documentation for lock-on support and a fullscreen config option.
Michael Pavone <pavone@retrodev.com>
parents:
1014
diff
changeset
|
225 in the config, -f will turn it off. |
216fa63749b3
Added documentation for lock-on support and a fullscreen config option.
Michael Pavone <pavone@retrodev.com>
parents:
1014
diff
changeset
|
226 |
1353
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
227 "gl" controls whether OpenGL is used for rendering. The default value is on. |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
228 If it is set to off instead, the fallback renderer which uses SDL2's render API |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
229 will be used instead. This option is mostly useful for users on hardware that |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
230 lacks OpenGL 2 support. While BlastEm will fall back automatically even if gl |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
231 is set to on there will be a warning. Disabling gl eliminates this warning. |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
232 |
1442
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
233 "scaling" controls the type of scaling used for textures in both the GL and |
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
234 SDL renderers. Valid values are "nearest" and "linear". Note that shaders also |
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
235 impact how pixels are scaled. |
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
236 |
1352
90c9922b5430
Add description of overscan settings to README
Michael Pavone <pavone@retrodev.com>
parents:
1227
diff
changeset
|
237 The "ntsc" and "pal" sub-sections control overscan settings for the emulated |
90c9922b5430
Add description of overscan settings to README
Michael Pavone <pavone@retrodev.com>
parents:
1227
diff
changeset
|
238 video output for NTSC and PAL consoles respectively. More details are available |
90c9922b5430
Add description of overscan settings to README
Michael Pavone <pavone@retrodev.com>
parents:
1227
diff
changeset
|
239 in the Overscan section. |
90c9922b5430
Add description of overscan settings to README
Michael Pavone <pavone@retrodev.com>
parents:
1227
diff
changeset
|
240 |
90c9922b5430
Add description of overscan settings to README
Michael Pavone <pavone@retrodev.com>
parents:
1227
diff
changeset
|
241 Overscan |
90c9922b5430
Add description of overscan settings to README
Michael Pavone <pavone@retrodev.com>
parents:
1227
diff
changeset
|
242 -------- |
90c9922b5430
Add description of overscan settings to README
Michael Pavone <pavone@retrodev.com>
parents:
1227
diff
changeset
|
243 |
90c9922b5430
Add description of overscan settings to README
Michael Pavone <pavone@retrodev.com>
parents:
1227
diff
changeset
|
244 Analog televisions generally don't display the entirety of a video frame. Some |
90c9922b5430
Add description of overscan settings to README
Michael Pavone <pavone@retrodev.com>
parents:
1227
diff
changeset
|
245 portion is cropped at the edges of the display. This is called overscan. |
90c9922b5430
Add description of overscan settings to README
Michael Pavone <pavone@retrodev.com>
parents:
1227
diff
changeset
|
246 Unfortunately, the amount of cropping performed varies considerably and is even |
90c9922b5430
Add description of overscan settings to README
Michael Pavone <pavone@retrodev.com>
parents:
1227
diff
changeset
|
247 adjustable on many TV sets. To deal with this, BlastEm allows overscan to be |
90c9922b5430
Add description of overscan settings to README
Michael Pavone <pavone@retrodev.com>
parents:
1227
diff
changeset
|
248 customized. |
90c9922b5430
Add description of overscan settings to README
Michael Pavone <pavone@retrodev.com>
parents:
1227
diff
changeset
|
249 |
90c9922b5430
Add description of overscan settings to README
Michael Pavone <pavone@retrodev.com>
parents:
1227
diff
changeset
|
250 Overscan values are specified in the "ntsc" and "pal" sub-sections of the |
90c9922b5430
Add description of overscan settings to README
Michael Pavone <pavone@retrodev.com>
parents:
1227
diff
changeset
|
251 "video" section of the config file. The "overscan" sub-section contains four |
90c9922b5430
Add description of overscan settings to README
Michael Pavone <pavone@retrodev.com>
parents:
1227
diff
changeset
|
252 settings for specifying the number of pixels cropped on each side of the |
90c9922b5430
Add description of overscan settings to README
Michael Pavone <pavone@retrodev.com>
parents:
1227
diff
changeset
|
253 display: "top", "bottom", "left" and "right". |
90c9922b5430
Add description of overscan settings to README
Michael Pavone <pavone@retrodev.com>
parents:
1227
diff
changeset
|
254 |
90c9922b5430
Add description of overscan settings to README
Michael Pavone <pavone@retrodev.com>
parents:
1227
diff
changeset
|
255 The default settings hide the horizontal border completely for both NTSC and |
90c9922b5430
Add description of overscan settings to README
Michael Pavone <pavone@retrodev.com>
parents:
1227
diff
changeset
|
256 PAL consoles. For the vertical borders, the NTSC overscan settings are chosen |
90c9922b5430
Add description of overscan settings to README
Michael Pavone <pavone@retrodev.com>
parents:
1227
diff
changeset
|
257 to give square pixels with the default aspect ratio of 4:3. For PAL, the |
90c9922b5430
Add description of overscan settings to README
Michael Pavone <pavone@retrodev.com>
parents:
1227
diff
changeset
|
258 default settings are set so that the PAL-exclusive V30 mode will produce a |
90c9922b5430
Add description of overscan settings to README
Michael Pavone <pavone@retrodev.com>
parents:
1227
diff
changeset
|
259 visible border that is the same size as what is shown in V28 mode in NTSC. This |
90c9922b5430
Add description of overscan settings to README
Michael Pavone <pavone@retrodev.com>
parents:
1227
diff
changeset
|
260 results in a slightly squished picture compared to NTSC which is probably |
90c9922b5430
Add description of overscan settings to README
Michael Pavone <pavone@retrodev.com>
parents:
1227
diff
changeset
|
261 appropriate given that a PAL display has more lines than an NTSC one. |
90c9922b5430
Add description of overscan settings to README
Michael Pavone <pavone@retrodev.com>
parents:
1227
diff
changeset
|
262 |
468 | 263 Audio |
264 ----- | |
265 | |
1014 | 266 The audio section contains settings that affect the audio output of BlastEm. |
1013 | 267 |
268 "rate" selects the preferred sample rate for audio output. Your operating | |
269 system may not accept this value in which case a different rate will be chosen. | |
270 This should generally be either the native sample rate of your sound card or an | |
271 integral divisor of it. Most modern sound cards have a native output rate that | |
272 is a multiple of 48000 Hz so the default setting should work well for most users. | |
273 | |
274 "buffer size" controls how large of a buffer uses for audio data. Smaller values | |
275 will reduce latency, but too small of a value can lead to dropouts. 512 works | |
276 well for me, but a higher or lower value may be more appropriate for your system. | |
277 | |
278 "lowpass_cutoff" controls the cutoff, or knee, frequency of the RC-style | |
279 low-pass filter. The default value of 3390 Hz is supposedly what is present in | |
280 at least some Genesis/Megadrive models. Other models reportedly use an even | |
281 lower value. | |
468 | 282 |
1014 | 283 Clocks |
284 ------ | |
285 | |
286 The clocks section contains settings that affect how fast things run. | |
287 | |
288 "m68k_divider" describes the relationsip between the master clock (which is | |
289 53693175 Hz for NTSC mode and 53203395 Hz for PAL mode). The default value of 7 | |
290 matches the real hardware. Set this to a lower number to overclock the 68000 | |
291 and set it to a higher number to underclock it. | |
292 | |
293 "max_cycles" controls how often the system is forced to synchronize all | |
294 hardware. BlastEm generally uses a sync on demand approach to synchronizing | |
295 components in the system. This can provide perfect synchronization for most | |
296 components, but since the Z80 can steal cycles from the 68000 at unpredictable | |
297 times 68000/Z80 synchronization is imperfect. The default value of 3420 | |
298 corresponds to the number of master clock cycles per line. Larger numbers may | |
299 produce a modest performance improvement whereas smaller numbers will improve | |
300 68000/Z80 synchronization. | |
301 | |
302 "speeds" controls the speed of the overall emulated console at different | |
303 presets. Preset 0 is the default speed and should normally be set to 100. The | |
304 other presets enable the slow/turbo mode functionality. | |
305 | |
306 UI | |
307 -- | |
308 | |
1353
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
309 The UI section contains settings that affect the user interface. |
1014 | 310 |
311 "rom" determines the path of the Genesis/Megadrive ROM that implements the UI. | |
312 Relative paths will be loaded relative to the BlastEm executable. | |
313 | |
1353
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
314 "initial_path" specifies the starting path for the ROM browser. It can contain |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
315 the following special variables: $HOME, $EXEDIR. Additionally, variables |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
316 defined in the OS environment can be used. |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
317 |
1442
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
318 "remember_path" specifies whether BlastEm should remember the last path used in |
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
319 the file browser. When it is set to "on", the last path will be remembered and |
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
320 used instead of "initial_path" in subsequent runs. If it is set to "off", |
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
321 "initial_path" will always be used. |
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
322 |
1353
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
323 "screenshot_path" specifies the directory "internal" screenshots will be saved |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
324 in. It accepts the same special variables as "initial_path". |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
325 |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
326 "screenshot_template" specifies a template for creating screenshot filenames. |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
327 It is specified as a format string for the C library function strftime |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
328 |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
329 "save_path" specifies the directory that savestates, SRAM and EEPROM data will |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
330 be saved in for a given game. It can contain the following special variables: |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
331 $HOME, $EXEDIR, $USERDATA, $ROMNAME. Like "initial_path" it can also reference |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
332 variables from the environment. |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
333 |
1442
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
334 "extensions" specifies the file extensions that should be displayed in the file |
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
335 browser. |
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
336 |
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
337 "state_format" specifies the preferred format for saving save states. Valid |
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
338 values are "native" (the default) and "gst". "native" save states do a better |
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
339 job of preserving the state of the emulated system, but "gst" save states are |
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
340 compatible with other emulators like Kega and Gens. This setting has no effect |
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
341 for systems other than the Genesis/Mega Drive |
59e1dbb795a7
Update README in anticipation of 0.5.1 release
Michael Pavone <pavone@retrodev.com>
parents:
1354
diff
changeset
|
342 |
1353
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
343 Path Variables |
1014 | 344 -------------- |
345 | |
1353
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
346 This section explains the meaning of the special path variables referenced |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
347 in the previous section. |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
348 |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
349 $HOME The home directory of the current user. On most Unix variants, it |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
350 will be a subdirectory of /home. On Windows it will typically be a |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
351 subdirectory of C:\Users |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
352 $EXEDIR The directory the BlastEm executable is located in |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
353 $USERDATA This is an OS-specific path used for storing application specific |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
354 user data. On Unix variants, it will be $HOME/.local/share/blastem |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
355 On Windows it will be %LOCALDATA%/blastem |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
356 $ROMNAME The name of the currently loaded ROM file without the extension |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
357 |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
358 System |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
359 ------ |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
360 |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
361 "ram_init" determines how the RAM in the emulated system is initialized. The |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
362 default value of "zero" will cause all RAM to be zeroed out before the system |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
363 is started. Alternatively, "random" can be used to initialize RAM with values |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
364 from a pseudo-random number generator. This option is mostly useful for |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
365 developers that want to debug initialization issues in their code. |
52d9e3c36b4f
Update README to account for new config file options
Michael Pavone <pavone@retrodev.com>
parents:
1352
diff
changeset
|
366 |
1014 | 367 "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 specifies a 60Hz "foreign" console. | |
370 | |
468 | 371 Debugger |
372 -------- | |
373 | |
374 BlastEm has an integrated command-line debugger loosely based on GDB's | |
375 interface. The interface is very rough at the moment. Available commands in the | |
376 68K debugger are: | |
1066 | 377 b ADDRESS - Set a breakpoint at ADDRESS |
378 d BREAKPOINT - Delete a 68K breakpoint | |
379 co BREAKPOINT - Run a list of debugger commands each time | |
1014 | 380 BREAKPOINT is hit |
1066 | 381 a ADDRESS - Advance to address |
382 n - Advance to next instruction | |
383 o - Advance to next instruction ignoring branches to | |
384 lower addresses (good for breaking out of loops) | |
385 s - Advance to next instruction (follows bsr/jsr) | |
386 c - Continue | |
387 bt - Print a backtrace | |
388 p[/(x|X|d|c)] VALUE - Print a register or memory location | |
389 di[/(x|X|d|c)] VALUE - Print a register or memory location each time | |
390 a breakpoint is hit | |
391 vs - Print VDP sprite list | |
392 vr - Print VDP register info | |
393 zb ADDRESS - Set a Z80 breakpoint | |
394 zp[/(x|X|d|c)] VALUE - Display a Z80 value | |
395 q - Quit BlastEm | |
468 | 396 Available commands in the Z80 debugger are: |
1066 | 397 b ADDRESS - Set a breakpoint at ADDRESS |
398 de BREAKPOINT - Delete a Z80 breakpoint | |
399 a ADDRESS - Advance to address | |
400 n - Advance to next instruction | |
401 c - Continue | |
402 p[/(x|X|d|c)] VALUE - Print a register or memory location | |
403 di[/(x|X|d|c)] VALUE - Print a register or memory location each time | |
404 a breakpoint is hit | |
405 q - Quit BlastEm | |
468 | 406 |
407 The -d flag can be used to cause BlastEm to start in the debugger. | |
408 Alternatively, you can use the ui.enter_debugger action (mapped to the 'u' key | |
1014 | 409 by default) to enter the debugger while a game is running. To debug the menu |
410 ROM, use the -dm flag. | |
468 | 411 |
536 | 412 GDB Remote Debugging |
413 -------------------- | |
414 | |
415 In addition to the native debugger, BlastEm can also act as a GDB remote | |
416 debugging stub. To use this, you'll want to configure your Makefile to produce | |
417 both an ELF executable and a raw binary. Invoke an m68k-elf targeted gdb with | |
418 the ELF file. Once inside the gdb session, type: | |
419 | |
1066 | 420 target remote | BLASTEM_PATH/blastem ROM_FILE.bin -D |
536 | 421 |
422 where BLASTEM_PATH is the relative or absolute path to your BlastEm | |
423 installation and ROM_FILE.bin is the name of the raw binary for your program. | |
424 BlastEm will halt at the beginning of your program's entry point and return | |
425 control to GDB. This will allow you to set breakpoints before your code runs. | |
426 | |
808
2953708d02af
Update README, CHANGELOG and version string for 0.3.1
Michael Pavone <pavone@retrodev.com>
parents:
785
diff
changeset
|
427 On Windows, the procedure is slightly different. First run |
1066 | 428 blastem.exe ROM_FILE.bin -D |
808
2953708d02af
Update README, CHANGELOG and version string for 0.3.1
Michael Pavone <pavone@retrodev.com>
parents:
785
diff
changeset
|
429 This will cause BlastEm to wait for a socket connection on port 1234. It will |
2953708d02af
Update README, CHANGELOG and version string for 0.3.1
Michael Pavone <pavone@retrodev.com>
parents:
785
diff
changeset
|
430 appear to be frozen until gdb connects to it. Now open the ELF file in gdb |
2953708d02af
Update README, CHANGELOG and version string for 0.3.1
Michael Pavone <pavone@retrodev.com>
parents:
785
diff
changeset
|
431 and type: |
2953708d02af
Update README, CHANGELOG and version string for 0.3.1
Michael Pavone <pavone@retrodev.com>
parents:
785
diff
changeset
|
432 |
1066 | 433 target remote :1234 |
808
2953708d02af
Update README, CHANGELOG and version string for 0.3.1
Michael Pavone <pavone@retrodev.com>
parents:
785
diff
changeset
|
434 |
536 | 435 Trace points and watch points are not currently supported. |
436 | |
810
1f75614d7be8
Fixed an ommission in the CHANGELOG added basic description of extra utilities to README
Michael Pavone <pavone@retrodev.com>
parents:
808
diff
changeset
|
437 Included Tools |
1f75614d7be8
Fixed an ommission in the CHANGELOG added basic description of extra utilities to README
Michael Pavone <pavone@retrodev.com>
parents:
808
diff
changeset
|
438 -------------- |
1f75614d7be8
Fixed an ommission in the CHANGELOG added basic description of extra utilities to README
Michael Pavone <pavone@retrodev.com>
parents:
808
diff
changeset
|
439 |
1f75614d7be8
Fixed an ommission in the CHANGELOG added basic description of extra utilities to README
Michael Pavone <pavone@retrodev.com>
parents:
808
diff
changeset
|
440 BlastEm ships with a few small utilities that leverage portions of the emulator |
1f75614d7be8
Fixed an ommission in the CHANGELOG added basic description of extra utilities to README
Michael Pavone <pavone@retrodev.com>
parents:
808
diff
changeset
|
441 code. |
1066 | 442 |
443 dis - 68K disassembler | |
444 zdis - Z80 disassembler | |
445 vgmplay - Very basic VGM player | |
446 stateview - GST save state viewer | |
447 | |
1013 | 448 VSync |
449 ----- | |
450 | |
1014 | 451 This section includes information about using VSync with BlastEm. As mentioned |
452 above, the code is currently designed to only sync to audio and has some issues | |
453 with VSync as a result. That said, if your computer is fast enough and you | |
454 don't care about turbo mode, it can generally made to work. | |
455 | |
456 The native refresh rate of an NTSC Genesis is approximately 59.92 Hz which is | |
457 probably not the native refresh rate of your monitor. Fortunately, it is | |
458 most likely lower than your refresh rate. As long as this is true, VSync will | |
459 generally work as long as your computer is fast enough to cope with the time | |
460 lost waiting for VSync and the audio buffer is large enough to not run out of | |
461 samples during that delay. Latency will suffer a bit and you'll get a doubled | |
1352
90c9922b5430
Add description of overscan settings to README
Michael Pavone <pavone@retrodev.com>
parents:
1227
diff
changeset
|
462 frame every once and a while, but generally things will be fine. |
1014 | 463 |
464 If you enable VSync and you're getting audio dropouts, first try doubling the | |
465 audio buffer setting. If you still experience dropouts, it's possible your | |
466 computer is not fast enough or that your monitor's actual refresh rate is in | |
467 fact lower than that of the emualted console. Not much can be done about the | |
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. | |
810
1f75614d7be8
Fixed an ommission in the CHANGELOG added basic description of extra utilities to README
Michael Pavone <pavone@retrodev.com>
parents:
808
diff
changeset
|
472 |
1066 | 473 Special Thanks |
474 -------------- | |
475 | |
476 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. | |
478 | |
479 Nemesis - His work reverse engineering and documenting the VDP and | |
480 YM-2612 has saved me an immeasurable amount of time. I've | |
481 found both his sprite overflow test ROM and VDP FIFO | |
482 Testing ROM to be quite helpful. | |
483 | |
484 Charles MacDonald - While it hasn't been updated in a while, I still find his | |
485 VDP document to be my favorite reference. His Genesis | |
486 hardware document has also come in handy. | |
487 | |
488 Eke-Eke - Eke-Eke wrote a great document on the use of I2C EEPROM in | |
489 Genesis games and also left some useful very helpful | |
490 comments about problematic games in Genesis Plus GX | |
491 | |
492 Bart Trzynadlowski - His documents on the Genecyst save-state format and the | |
493 mapper used in Super Street Fighter 2 were definitely | |
494 appreciated. | |
495 | |
496 KanedaFR - Kaneda's SpritesMind forum is a great resource for the | |
497 Sega development community. | |
1354
34798ad9c570
Updated special thanks and version number listed in menu ROM
Michael Pavone <pavone@retrodev.com>
parents:
1353
diff
changeset
|
498 |
34798ad9c570
Updated special thanks and version number listed in menu ROM
Michael Pavone <pavone@retrodev.com>
parents:
1353
diff
changeset
|
499 Titan - Titan has created what are without a doubt the most |
34798ad9c570
Updated special thanks and version number listed in menu ROM
Michael Pavone <pavone@retrodev.com>
parents:
1353
diff
changeset
|
500 impressive demos on the Megadrive. Additionally, I am very |
34798ad9c570
Updated special thanks and version number listed in menu ROM
Michael Pavone <pavone@retrodev.com>
parents:
1353
diff
changeset
|
501 grateful for the documentation provided by Kabuto and the |
34798ad9c570
Updated special thanks and version number listed in menu ROM
Michael Pavone <pavone@retrodev.com>
parents:
1353
diff
changeset
|
502 assistance of Kabuto, Sik and Jorge in getting Overdrive 2 |
34798ad9c570
Updated special thanks and version number listed in menu ROM
Michael Pavone <pavone@retrodev.com>
parents:
1353
diff
changeset
|
503 to run properly in BlastEm. |
1066 | 504 |
505 I'd also like to thank the following people who have performed compatibility | |
506 testing or submitted helpful bug reports | |
507 | |
1354
34798ad9c570
Updated special thanks and version number listed in menu ROM
Michael Pavone <pavone@retrodev.com>
parents:
1353
diff
changeset
|
508 micky, Sasha, lol-frank, Sik, Tim Lawrence, ComradeOj, Vladikcomper |
1066 | 509 |
468 | 510 License |
511 ------- | |
512 | |
513 BlastEm is free software distributed under the terms of the GNU General Public | |
514 License version 3 or higher. This gives you the right to redistribute and/or | |
515 modify the program as long as you follow the terms of the license. See the file | |
516 COPYING for full license details. | |
517 | |
785
0e5f14d9a579
Prep for 0.3.0 release
Michael Pavone <pavone@retrodev.com>
parents:
536
diff
changeset
|
518 Binary releases of BlastEm are packaged with GLEW and SDL2 which have thier own |
0e5f14d9a579
Prep for 0.3.0 release
Michael Pavone <pavone@retrodev.com>
parents:
536
diff
changeset
|
519 licenses. See GLEW-LICENSE and SDL-LICENSE for details. |