• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

doc/H03-May-2022-1,4501,071

extra_dev/H09-Apr-2005-11181

pixmaps/H03-May-2022-

AUTHORSH A D28-Mar-20051.2 KiB4035

COPYINGH A D28-Mar-2005218 95

ChangeLogH A D05-Apr-200518.6 KiB458381

INSTALLH A D15-Oct-20034.2 KiB10376

Makefile.amH A D27-Mar-20055.7 KiB191150

Makefile.inH A D03-May-202234.9 KiB879776

NEWSH A D05-Apr-2005832 1515

READMEH A D13-Mar-200525.2 KiB583465

TODOH A D03-Apr-200539 11

aclocal.m4H A D27-Mar-200546.1 KiB1,2741,104

akrip32.hH A D02-Mar-200311.4 KiB371256

bios.cH A D26-May-200428.4 KiB1,097836

bios.hH A D26-May-2004119 84

bp.cH A D15-Sep-20033.5 KiB172103

bp.hH A D18-Feb-2003345 2219

callbacks-server.cH A D13-Jun-20042.7 KiB9263

callbacks-server.hH A D13-Jun-2004790 2417

callbacks.cH A D14-Mar-200512 KiB494371

callbacks.hH A D19-Jun-20047.6 KiB215163

cd.cH A D15-Sep-20031.2 KiB6151

cd.hH A D18-Feb-20031.9 KiB7945

cheat.cH A D26-May-200416.8 KiB745508

cheat.hH A D26-May-2004654 3618

cleantyp.hH A D18-Feb-20031.7 KiB11459

compileH A D06-Feb-20053 KiB10854

config.guessH A D24-Dec-200442.4 KiB1,4541,257

config.h.inH A D27-Mar-20056 KiB230157

config.subH A D24-Dec-200430.7 KiB1,5671,426

configureH A D03-May-2022295.7 KiB10,4558,779

configure.acH A D27-Mar-200517.9 KiB657476

crc_ctl.hH A D18-Feb-20033.8 KiB259258

debug.cH A D26-May-20046.9 KiB391158

debug.hH A D26-May-20041.4 KiB6530

defs.hH A D18-Feb-20031,020 6739

depcompH A D16-May-200413.5 KiB480304

dis.cH A D26-May-200410.8 KiB483299

dis.hH A D15-Sep-2003795 5325

dis_cst.hH A D18-Feb-200313.1 KiB300287

dis_runtime.hH A D23-May-200414.5 KiB297284

edit_ram.cH A D15-Sep-20036.3 KiB255132

edit_ram.hH A D18-Feb-2003188 146

followop.cH A D15-Sep-200310.4 KiB439294

followop.hH A D18-Feb-20031.2 KiB8031

format.cH A D15-Sep-20035.3 KiB243186

format.hH A D18-Feb-20031.5 KiB3123

gfx.cH A D05-Apr-200528.6 KiB1,115753

gfx.hH A D16-Sep-20032 KiB8245

globals.hH A D26-May-20041,011 5528

gtk_main-server.cH A D13-Jun-20042.1 KiB7949

gtk_main-server.hH A D13-Jun-2004313 1710

gtk_main.cH A D14-Mar-200521.9 KiB727544

gtk_main.hH A D14-Mar-2005633 2718

gui.hH A D15-Sep-20031.2 KiB7646

h6280.cH A D27-Mar-200559.5 KiB3,2012,599

h6280.hH A D23-May-20047.3 KiB287265

hard_pce.cH A D11-Mar-200518.2 KiB888657

hard_pce.hH A D03-May-20227.4 KiB277132

hcd.cH A D26-May-200421.6 KiB1,375599

hcd.hH A D11-Nov-20031 KiB5931

hugo.cH A D28-Mar-20053.9 KiB208122

hugo.hH A D23-May-2004137 118

hugod.cH A D14-Jun-20049.3 KiB385256

hugod.hH A D13-Jun-20043.6 KiB11749

iniconfig.cH A D05-Apr-200526.7 KiB1,048778

iniconfig.hH A D26-May-2004761 5121

install-shH A D13-Jun-20046.3 KiB270153

interf.hH A D18-Feb-2003283 177

interface-server.cH A D12-Mar-200517.6 KiB412348

interface-server.hH A D12-Mar-2005137 72

interface.cH A D12-Mar-2005157.1 KiB3,6413,139

interface.hH A D12-Mar-2005463 149

interupt.hH A D18-Feb-2003616 2913

iso_ent.hH A D25-Oct-200112.2 KiB213209

lang.cH A D27-Mar-200518.5 KiB568549

lang.hH A D18-Feb-20031.3 KiB5650

libamp.hH A D18-Feb-20031.4 KiB4927

list_rom.cH A D26-May-2004135.3 KiB9,8174,440

list_rom.hH A D26-May-20041.5 KiB5427

lsmp3.cH A D26-May-20048.9 KiB371207

lsmp3.hH A D18-Feb-200397 74

manual.hH A D13-Mar-20054.4 KiB163162

manual_convert.plH A D13-Mar-2005261 1911

menu.hH A D14-Jan-20036 KiB262216

miniunz.cH A D28-Mar-20056.6 KiB274187

miniunz.hH A D28-Mar-20051 KiB276

missingH A D16-May-200410 KiB337263

mix.cH A D12-Nov-200320 KiB753432

mix.hH A D03-May-2022425 2115

mkinstalldirsH A D16-May-20041.9 KiB11285

myaspi32.hH A D27-Feb-200312.4 KiB234143

netplay.cH A D15-Jun-200432.5 KiB1,210799

netplay.hH A D08-Jun-20043.9 KiB11561

ogglength.cH A D14-Oct-2003744 3823

ogglength.hH A D14-Oct-2003260 1511

optable.cH A D18-Feb-200313.2 KiB291282

optable.hH A D15-Sep-20031.7 KiB5237

osd_dos_cd.cH A D18-Feb-200330.1 KiB1,311895

osd_dos_cd.hH A D18-Feb-2003559 3721

osd_dos_gfx.cH A D18-Feb-200310.6 KiB383210

osd_dos_gfx.hH A D18-Feb-2003411 2211

osd_dos_machine.cH A D18-Feb-20036.4 KiB276179

osd_dos_machine.hH A D18-Feb-2003597 2914

osd_dos_snd.cH A D22-Jul-20030 10

osd_freebsd_cd.cH A D03-May-20224.7 KiB23943

osd_freebsd_cd.hH A D18-Feb-2003196 149

osd_keyboard.cH A D12-Mar-200556.2 KiB2,5681,936

osd_keyboard.hH A D11-Nov-2003698 4831

osd_linux_allegro_gfx.cH A D18-Feb-200310.1 KiB363195

osd_linux_allegro_gfx.hH A D18-Feb-2003596 3220

osd_linux_allegro_machine.cH A D18-Feb-20034.8 KiB220126

osd_linux_allegro_machine.hH A D18-Feb-2003606 4020

osd_linux_cd.cH A D26-May-20044.6 KiB215134

osd_linux_cd.hH A D18-Feb-2003221 1510

osd_linux_sdl_machine.cH A D05-Apr-20055.1 KiB230114

osd_linux_sdl_machine.hH A D06-Nov-2003445 3016

osd_linux_sdl_music.cH A D14-Oct-20032.6 KiB9663

osd_linux_sdl_music.hH A D13-Oct-2003573 3022

osd_linux_snd.cH A D26-May-20043.9 KiB180138

osd_linux_snd.hH A D18-Feb-2003249 2112

osd_sdl_gfx.cH A D03-May-202216.2 KiB580402

osd_sdl_gfx.hH A D05-Apr-2005584 2819

osd_solaris_cd.cH A D17-Jun-2004789 6942

osd_solaris_cd.hH A D15-Oct-2003196 149

osd_unix_sdl_machine.cH A D27-Mar-20055.4 KiB246112

osd_unix_sdl_machine.hH A D15-Oct-2003888 4827

osd_win_allegro_gfx.cH A D18-Feb-200310 KiB363194

osd_win_allegro_gfx.hH A D14-Jan-2003600 4020

osd_win_allegro_machine.cH A D18-Feb-20036.2 KiB267131

osd_win_allegro_machine.hH A D18-Feb-2003606 4020

osd_win_cd.cH A D27-May-200414.9 KiB804526

osd_win_cd.hH A D14-Jan-2003254 2012

osd_win_sdl_machine.cH A D27-Mar-20055.4 KiB246105

osd_win_sdl_machine.hH A D12-Nov-2003666 4723

osd_win_snd.cH A D12-Nov-20031.4 KiB6948

osd_win_snd.hH A D18-Feb-2003249 2112

pce.cH A D03-May-202283.9 KiB3,7292,370

pce.hH A D05-Apr-20057.6 KiB415255

pcecd.cH A D26-May-200420.1 KiB846578

pcecd.hH A D16-Sep-20031.5 KiB346

setup.issH A D09-Apr-20052.4 KiB5849

shared_memory.hH A D26-May-20045 KiB17898

sound.cH A D03-May-202214.6 KiB641370

sound.hH A D26-May-20041.6 KiB10049

sprite.cH A D05-Apr-200528.1 KiB1,218924

sprite.hH A D26-Mar-20053.1 KiB12132

subs_eagle.cH A D18-Feb-2003332 2018

support.cH A D01-Jun-20043.6 KiB145111

support.hH A D01-Jun-20041.8 KiB6831

sys_cd.hH A D26-May-20042.7 KiB12832

sys_dep.hH A D14-Dec-2001321 169

sys_gfx.hH A D05-Apr-20051.9 KiB7818

sys_inp.hH A D14-Mar-20052.9 KiB18481

sys_misc.hH A D20-Jan-20032 KiB8411

sys_snd.hH A D25-Feb-2002708 346

trans_fx.cH A D14-Jan-200313 KiB495292

trans_fx.hH A D14-Jan-20031.3 KiB4817

unzip.cH A D25-May-200433.9 KiB1,300899

unzip.hH A D25-Mar-20039.7 KiB27691

utils.cH A D05-Apr-200510.3 KiB597488

utils.hH A D05-Apr-20051.6 KiB6832

view_inf.cH A D26-May-200413.9 KiB527375

view_inf.hH A D18-Feb-2003800 4819

view_zp.cH A D26-May-20044.6 KiB184125

view_zp.hH A D18-Feb-2003185 146

README

1            .  ___   ____                _________           ___
2             .|  `|_|   `| ___ ___  __ .|    ____/ _______ .|  `|
3           .:|     _     ||  `|  `|(__)|    (_  `|/   _  `\|____/:.
4      ...:::||____|:|____||_______/::::\_________/\_______/(____)::::...
5            `-*-- -  -   -    -      -            -              ^cls
6                Core-GraphX / PC Engine / Turbo GraphX Emulator
7                             Version 2.10
8                             04 March 2003
9
10
11        N.B. When reading this .TXT - "(*)" indicates the main changes
12
13--[ CONTACT INFORMATION ]----------------------------------------------------
14    E-Mail :   zeograd@zeograd.com
15
16    ICQ UIN :  40632933
17
18    Homepage : http://www.zeograd.com
19
20
21--[ DISCLAIMER ]-------------------------------------------------------------
22
23    I can't be held responsible for any misuse of this software, it comes
24    with absolutely no warranty. Use it at your own risks.
25
26--[ INTRODUCTION ]-----------------------------------------------------------
27
28    Hi everyone, Welcome to the Hu-Go! documentation.
29    I (Zeograd) am not really the author of this program. I discovered
30    sources of a PC Engine emulator at Bero's Homepage
31    (http://www.geocities.co.jp/Playtown/2004/)
32
33    Plus improvements at Hmmx's Homepage
34    (formerly, http://www.geocities.co.jp/SiliconValley/7052/).
35
36    Hmmx made XPCE (for DirectX) but I've been interested in continuing
37    their work under DOS and voila, you've got another emulator available
38    to burn your keyboard playing all night with great PCE games ;)
39
40    This one is free and you've got access to sources as Bero did with his
41    work. I'd like people interested in making a good emulator for free to
42    contact me to talk about what is missing in Hu-Go!. Don't hesitate
43    answering the poll on my webpage or filling the forum you can find there.
44
45--[ HOW TO INSTALL IT ? ]----------------------------------------------------
46
47    Hu-Go! is now available in binary form for several platforms, such as
48	Microsoft windows, i386 debian, i386 Mandrake as well as in sources form
49	which can be compiled on various environments.
50
51	Check the INSTALL file for further instructions concerning the source
52	distribution.
53
54--[ HOW TO USE IT ? ]--------------------------------------------------------
55
56    You can hardly make it easier (maybe with a direct synaptic link between
57    your brain and your computer to guess the name of the rom...) :
58	Just type hugo with no options to bring the gtk gui which is quite straight
59	forward. You can load a rom (or .iso) or fire a cd. You can load and save
60	file using the menu, or change the settings, which are those you can change
61	in the .ini file.
62    You can also use hugo without the gui, just type
63	hugo [ROM] [BACKUPMEM] [OPTION] where ROM is the name of the
64    ROM or ISO or ISQ or HCD. Check out the HCD section later for details.
65    you want to play with. If ROM has no extension, Hu-Go!
66    will look for ROM.PCE then ROM.ZIP. If the ROM has PCE extension, try it,
67    then try ROM in ROM.ZIP. Then if ROM has ZIP extension, look for the
68    PCE file with same basename as ROM...
69    ISO games must be specified with ISO extension to be recognized.
70
71    (Recommended games - try SUPER STAR SOLDIER or NEUTOPIA 2, you won't
72    regret it!. If you don't have any rom, you can try the little demo
73    rom included made with Huc [www.zeograd.com])
74
75    For OPTIONS, see later...
76
77    BACKUPMEM is the name of the file containing the backup RAM.
78    These two last are optionals. The order shouldn't import but the ROM name
79    must be before the name of backup RAM.
80
81--[ HOW TO CONFIGURE HU-GO! FOR PLAYING CDS ? ]------------------------------
82
83	Under linux, you first have to configure the cd path (ie /dev/cdrom or such)
84	either on the command line (-i <cd path>), the .ini file (variable cd_path),
85	or in the gui, under the tab 'CD emulation'.
86	FreeBSD doesn't have yet the CD support.
87	For any platform, choose the system card rom location. It's the rom which
88	actually boots the CD, and it's called syscard.pce or such. As for all
89	commercial roms, you can only use it if you've bought a system card hucard
90	or an hardware containing it (Any duo for instance).
91	It's a known bug that you can't always play several CDs in a row without
92	restarting the whole emulator.
93
94--[ SYSTEM REQUIREMENTS ]----------------------------------------------------
95
96    -- Pentium 166 (maybe less without sound; something like 233 or 266 for
97       good sound).
98
99    -- 8MB of RAM.
100
101    -- A Linux system or FreeBSD or Microsoft windows (only 95 to XP tested)
102
103    -- A sound card (only if you want to hear sound, of course).
104
105    -- A small amount of brain cells (enough to control basic motor
106       functions. For Cheating and Disassembling, a few trillion more may be
107       required ;)
108
109    -- Fingers (may be replaced by a direct synaptic link, I'm working on it,
110       if you want to become a guinea pig, let me know too ;) Note - requires
111       brain cells specified above.
112
113--[ KEYBOARD CONTROLS ]------------------------------------------------------
114
115    Cursor keys          Direction
116    Alt                  Button 1
117    Space                Button 2
118    Tab                  Select key
119    Enter                Start key
120    X                    Toggle Autofire 1
121    C                    Toggle autofire 2
122
123    (These are default keys for all players)
124    You can edit yours using the HU-GO!.INI (dos/windows) or hugo.ini (un*x)
125	file (See details later)
126
127    Special keys:
128
129    Can't be changed (you can always assign these keys to "normal" ones,
130    it will mostly have the "special" effects, eventually followed by the
131    "normal" ones)
132
133
134    tilde key (under ESC key)   Display the number of frame elapsed
135             since the beginning of the track (to create subtitles)
136    1 on alpha pad   Toggle the sprites display
137    2 on alpha pad   Toggle the background display
138
139-- alpha keys --
140   3,4,5,6,7 and 8 on alpha pad
141                     May unblock some isos
142-- alpha keys --
143
144    - on alpha pad   Lower the sound level
145    = on alpha pad   Raise the sound level
146    9 on alpha pad   Lower the sound quality
147    0 on alpha pad   Raise the sound quality
148    F1               Enter a value to search for (See details later)
149    F2               Set a value in RAM (See details later)
150    F3               Freeze a value in RAM (See details later)
151    F4               Test purpose key, now display the draft gui
152    F5               Save ScreenShot (named pict????.pcx) (disabled right now)
153	F9				 Toggle full screen mode
154    ESC, F12         Exit (not really useful)
155    F6               Save game progression (named ROM.SAV where ROM is the
156                     ROM name, Also work for iso file in file names ISO.SVI,
157                     For games on CD, only 1 saved game is allowed, whatever the CD)
158    F7               Load game progression
159    'Num Lock'       Toggle sound dumping mode
160
161    Keys Used on Numeric Keypad
162    /                Toggle image dumping mode (in VIDEO/*.PCX)
163    +                Skip one more frame per sec.
164    -                Skip one less frame per sec.
165
166--[ OPTIONS ]----------------------------------------------------------------
167
168    There are two kinds of options. Command line or HU-GO!.INI options. The
169    emu first reads in the INI file then the command line, so you can
170    over-ride general options.
171
172    ** Command line options
173    Can be either -FV or -F V where F is the flag and V the value
174
175   -- c : CD emulation (This way of emulating ISO is no more compulsory but still works,
176                         is compulsory for using CDs)
177        0 -> Only Hu-card emulation (Default)
178        1 -> CD emulation on
179        2 -> ISO file emulation on
180        3 -> ISQ file emulation on
181        4 -> BIN file emulation on (it's a raw full dump, only 1 track supported
182          right now, and only if <280 Mb)
183
184	-- f : Fullscreen model
185		0 -> Start in window mode
186		1 -> Start in fullscreen mode
187
188    -- m : No bios mode
189        0 -> Use bios as much as possible (Default, faster but sometime less
190                                           accurate)
191        1 -> Use no bios at all as possible (slower but make more game works)
192
193	-- s : Stereo mode
194		0 -> Mono mode (Default)
195		1 -> Stereo mode
196
197    -- u : US encoded rom
198        0 -> Normal rom (Default)
199        1 -> US encoded rom, with invertion of bits
200       Hu-Go! should automaticaly recognize such rom but if not (i.e.
201       it works only is -u1 is specified) tell me so that I can add it
202       to the database.
203
204	-- w : Window size multiplier
205		1 -> normal window size (Default)
206		2 -> doubled window size
207		3 -> tripled window size
208		4 -> the meaning of this option is let to the reader's attention
209
210    ** Initialisation file options
211    This file accepts comments in lines beginning with a #, the form is
212    F=V where F the name of the option and V the value.
213
214    --KEYS : it's a bit long to explain in details but I'll explain the
215    method. Each function is represented by a string ("UP","DOWN","LEFT",
216    "RIGHT","I","II","SELECT","START","AUTOI","AUTOII") immediately followed
217    by the number of the contoller. The value is then the scancode as you
218    can find it in the SCANCODE.TXT.
219    When mapping a joypad related configuration, you can also use "PI","PII",
220   "PSELECT", "PSTART", "PAUTOI", "PAUTOII" to map button I, II, Select, Start
221    and autoI, autoII. The given value of the right being the number of the
222    button on your pad, of course.
223    Now, you can create up to 15 different configs by using sections like
224    [config5]. These sections must be at the end of the INI files. They
225    contain key definitions as explained above but also info on controllers
226    e.g. putting input2=key3 will make the 2nd pad of the PC Engine to be
227    controlled by the 3rd keyboard mapping (UP3, LEFT3,...). As valid strings
228    you have 'input1' to 'input5' for the 5 PC Engine Gamepads (only 4
229    emulated so far), and 'key1' to 'key5' for 5 key mappings, 'joy1' to
230    'joy4' for 4 different joypads, 'mouse1' and 'mouse2' for 2 mice (not yet
231    implemented) and 'synaplink' for a direct synaptic link (also not
232    implemented ;)
233
234    E.G. :
235    Setting in the INI file
236
237     config=1
238
239     [config1]
240
241       input1=key1
242
243       UP1=0x16
244       LEFT1=0x23
245       DOWN1=0x24
246       RIGHT1=0x25
247
248       input2=joy1
249
250    This will change direction keys for the first player to 'u','h','j','k'
251    while the second player will play with the first joypad. Note that when
252    you specify a joy input, only the directions and the 2 buttons are
253    remapped so you can still choose keys for select, start, autoI and
254    autoII. As an example, the config1 is just a standard input with 1 player
255    using a joypad so if you want to play with a joypad just uncomment the
256    line with config=1. It's not very clear but the built-in menu allows easier
257	configuration.
258
259    -- language : Language of most messages during the emulation
260          0 -> English (default) (by me)
261          1 -> Fran�ais (by me)
262          2 -> Espanol (by my gf, and Juan roman Soriano)
263          3 -> Slovensko (by ]pit[ )
264          4 -> Portuguese (by CodeMaster)
265          5 -> German (by sALTY)
266          6 -> Dutch (by Fixo)
267          7 -> Polish (by Dox and Faust)
268          8 -> Italian (by Gareth Jax)
269		  9 -> Russian (by Lord Mardulak)
270
271    -- rom_dir : Directory of your roms. It's the default directory the
272    fileselector will look in. Use either '/' or '\'.
273    (If no value given, current path is assumed)
274
275    -- snd_freq : Frequency of the PCM sound output. The higher, the best
276    quality but the slower. Use 11025 on slow machines and 22050 or 44100
277    on fast machines. You can also give intermediate values.
278       22050 Hz is default
279
280    -- buffer_size : Size of the buffer used for PCM sound output. the best
281    I can tell you here is to make tests. All depends of the frequency you use
282    and your machine speed. 256 bytes is the default (Fine for XP1900+) you can
283	also try 512 or 1024 if you got sound which stops at times.
284
285	-- cd_path : Device name of the cd drive under UN*X systems.
286	   /dev/cdrom is default
287
288	-- stereo : Whether to output sound in stereo.
289	   0 -> Mono sound (Default)
290	   1 -> Stereo sound
291
292	-- fullscreen_width : Preferred width of fullscreen mode
293	   640 is the default
294
295	-- fullscreen_height : Preferred height of fullscreen mode
296	   480 is the default
297
298	-- window_size : Zoom factor when in windowed mode
299	   1 to 4 are valid zoom factor (1 being the default)
300
301
302--[ HCD ]--------------------------------------------------------------------
303
304   Then what is this new format.
305   HCD means : Hu-Go! Cd Definition. Such a file allow you to use multi-code
306   CDs and emulate audio tracks with MP3
307   It's only a beginning and there are still troubles with ISQ to emulate
308   Code tracks but it should work fine later.
309   HCD are divided in sections :
310   [main]
311   for main info :
312   first_track=XX
313   last_track=XX
314
315   that indicates the first and last track (easy)
316
317   ISO_path=XXX
318   MP3_path=XXX
319
320   which are the default path for ISO and MP3 files, convenient when moving
321   of directory e.g.
322   If you don't specify anything there, the default path is the .HCD one
323
324   minimum_bios=X
325
326   where X is 0 or 1. Use to enable this mode (see in command line option)
327   when launching a particular HCD. (Now, this mode is 'no bios' but for
328   obvious compatibility reason, I've not changed the name...)
329
330   Then for each track you can find a section :
331   [trackXX]
332   where you'll find :
333
334   filename=...
335
336   i.e. the filename of the file to use to emulate this track (.ISO or .ISQ
337   for code or .MP3 for audio)
338   then :
339
340   type=CODE
341
342   that specify if the track is a code one (audio is default)
343   et finally
344
345   begin=lsn,XXX
346
347   to specify the beginning of the track in LSN format (# of sector since the
348   beginning of the first one) or LBA (# of sector since the beginning of the
349   CD) or MSF (theoricaly, only LSN really tested) (as for MSF, just do :
350   begin=msf,mm:ss:ff
351   add zeros if compulsory)
352   even if just a beginning, it allows playing multi-code tracks
353   and MP3 in games. (even if .MP3 control isn't yet perfect)
354   You'll find an example in the archive.
355
356   There's now another mode available. It's the cd one.
357   Write
358   type=CD
359   and you'll have the ability to fake a track from the .hcd file with a
360   track coming from a real cd.
361   In this mode, you have 2 mode fields:
362   drive=0
363   which specify the drive in which is the track you want to use, using the
364   format in which the cd driver is used to. i.e. 0, 1 and such.. for aspi
365   driver and letter D, E, and such for the mscdex driver.
366
367   Then you can specify the number of the track to use on the cd driver with
368   track=5
369   If you don't specify this field, the default value for the track field will
370   be the track number of the track to fake.
371
372
373   You can also use patching functions
374
375   patch_number=XX
376
377   where XX is the number of patch you want to apply
378
379   then
380
381   patchX=0X????????,0X??
382
383   where X goes from 0 to patch_number-1 and two hexa numbers represent
384   the offset and new val of the patch in the ISO file.
385
386   On the same model, you can also find a way of adding subtitle when audio
387   tracks are played (even if you don't own the MP3 for it). You can choose
388   the number of subtitles with :
389
390   subtitle_number=XX
391
392   where XX is the number of subtitle you want to have for the track.
393
394   You can also choose to synchronize the subtitles with the game or the
395   music with
396
397   synchro_mode=XX
398
399   if XX = 0, synchronisation is done with the game as in the first release
400   supporting it, else it's synchronised with music and you can replace
401   the words 'number of frame' by '60th of sec' in the following explanation,
402   concerning the meaning of the begin field.
403
404   Then, for each subtitle, you must choose the time where it should begin,
405   its duration and the message to display.
406   The syntax is as follow :
407
408   subtitleXX=<begin>,<duration>,<message>
409
410   where XX is the number of the subtitle (XX is between 0 and subtitle_number-1)
411   <begin> is the number of frame elapsed since the beginning of the track.
412   There's normally 60 frame per sec but using the number of frame instead
413   of time make subtitles synchronized with the real game and not the music.
414   Since it's harder to guess how many frame have been displayed, I've added
415   a display of such a number with the tilde key. The value that you'll see
416   when pressing the key is the exact value you'll have to put in the <begin>
417   field (ajusting them a bit if needed...)
418   The <duration> field is in 60th of second, i.e. putting 60 there will
419   display the message for 1 sec and finally, the last field is the message
420   that will be displayed. It shouldn't contain any comma.
421   One last thing : you must sort the subtitle according to the order of
422   appearition.
423   Don't hesitate looking at the example or sending a mail if needed.
424
425--[ CHEATING ]---------------------------------------------------------------
426
427    I've pondered at length as to whether to include such an option. If I'm
428    not mistaken, Hu-Go! is the first emulator to propose this type of
429    option. Cheating is very primitive and there is no visual help so you
430    can't see what you type...
431
432    BUT...
433
434    It works! If you want to cheat with the number of lives in a game,
435    first you run your game, then you type F1, the game stops. This is
436    normal. It's waiting for the value to search. Then you enter the number
437    of lives you actually have (In fact, it only considers the lower byte of
438    the value you entered), then it makes a search and shows you the result.
439    Play around and lose a life, repeat the same as above, pressing F1 and
440    entering the current value. Repeat it again and again until the search
441    only finds one value..
442    Note carefully this value, it's the offset in RAM of a variable that
443    contains the value you've entered. Is it the correct value? Easy, press
444    F2, the game stops then enter the offset noted before and the new value.
445    Normally you should have as many lives as you want.
446    If you got a 'SEARCH FAILED' then ... it failed, see below for help.
447    Using this method, the value is only changed once, but if you press F3
448    then enter the offset and the value, it will be changed to the specified
449    value 60 times per sec., so it looks like it is frozen. Pressing F3 then
450    the address will unfreeze the value.
451    Now, you can research value using a relative method. that's to say that
452    instead of searching exact values, you can simply tell hu-go! to search
453    for variation of the variable. e.g. each time you lose a life, you can
454    make a research on -1, i.e. the variable you're looking for have been
455    decreased by 1. With this method, you don't have to worry about the base
456    value used to represent the variable (see hints concerning this).
457    When you want to make a relative research, you have to use F1 as
458    previously but instead of typing the plain number, you must prefix it
459    with '+' or '-'. For the first research, you don't have to worry about
460    the value you're giving, it's simply used to initialize the temporary
461    file containing all the possible variables with all the current values.
462    Once done, you can press F1 then '+1' or '-3' and such. From a technical
463    point of view, it's possible to mix normal and relative research but if
464    you do absolute research, there's no point on doing relative one.
465
466--[ CHEATING HINTS ]---------------------------------------------------------
467
468     -- Be careful, you may think the cheat didn't work, in fact, some
469     variables aren't updated each frame so try to lose a life or if you
470     modified money try to buy something... then you may see the difference.
471     -- You aren't obliged to search for altered values, you can make a
472     search for 2 lifes then 5 sec. later you search for 2 lifes again,...
473     I suggest you search for the same value twice very quickly. If you look
474     twice for the same value with only a half a sec. interval, you will
475     certainly eliminate a good amount of 'bad' variables.
476     -- Once a search is complete and you no longer get a lot values each
477     time you search, you may stay stuck because two variables have the same
478     value at the same moment (often for core and screen purposes). If that
479     is the case go and check the file named ROM.FP0 (where ROM is the name
480     of the rom), this contains the different possible offsets. It's up to
481     you.
482     -- Sessions of research are kept between two launches of the emulator.
483     -- If you want to start a new session, just make a 'SEARCH FAILED'
484     (Search for 25 then 6 then 79 in a very reduced interval, if you can't
485     get an 'SEARCH FAILED' then you will be the next on my guinea pig list
486     for trying the direct synaptic link ;).
487     -- Sometimes, the value on screen isn't stored like shown, e.g. if you
488     have 5 lives, maybe the variable 'LIFE' is set at 4 or 6, try to search
489     for 'value'+1 or 'value'-1, it may work... (like the number of balls in
490     Devil Cr*sh).
491     The best to avoid this kind of problem is using relative value research.
492     -- The search only works on bytes but a variable may take 2, 3 or more
493     bytes. In this case try modifying the byte just 1 byte above or below
494     the one you found (e.g. if you've found that putting a value at address
495     X would change the money a bit, putting a value at address X+1 will
496     certainly change the money a lot).
497
498--[ DEVELOPERS CORNER ]------------------------------------------------------
499
500	Hu-Go! now exposes a large part of the current game internal variables via
501	shared memory (only linux/freebsd for now, soon windows too).
502	You can use the shared memory of identifier 25679. It contains a structure
503	of type struct_hard_pce as defined in shared_memory.h (you should grab the
504	source archive of course). You can then alter or read all the quite self
505	explanatory variables out there. As for controlling the cpu, you can use
506	the s_external_control_cpu field.
507	  -1 => Full speed
508	  0  => Emulation paused
509	 >0  => Number of opcodes to run before pausing
510	You have to recompile Hu-Go! using --enable-shared-memory to benefit this
511	feature.
512
513--[ THANKS ]-----------------------------------------------------------------
514
515   Special thanks :
516 *> -- Bacon boy 99 (Ex-Planet Rom webmaster, the former logo,    <*
517       having sent me some Cds and in fact, lots of things)
518	-- Ixion for the lots of bugs/improvements he worked on recently
519	-- Blake- for the bugs he fixed while doing his pce emu on gp32
520    -- ]pit[ for all his help (among all the new logo and banners)
521    -- Nyef for all the infos he gave me on CD emulation
522    -- Lester Barrows for his help on the linux code (notably, pad support from
523              his work)
524	-- Bt Garner (ideas, lots of stuff including hosting my site now, ...)
525    -- Ishan (ex Vlendr'it) for the mailing list, tweak mode tests, finding
526       nice code resources on the web and scanline mode
527    -- TOZTWO for the nice HTML doc
528    -- Tormod Tjaberg for the MP3 length detection code
529    -- fixo, cools, sALTY, codemaster, Raoh, MrF, dus, Yuu and all the #emu
530       dudes on IrcNet ;)
531    -- ElmerYud coz' he's Hu-Go! publicity manager ^_^
532    -- tAGGY for two nice pictures
533    -- SirJaguar, Nico, Ded, ZePoulpe, Leto_II, Ziller, Readiosys and guys on
534       #utopiasoft or #nec4ever
535    -- Dirk Steven (EAGLE is really very nice)
536    -- Dave Shadoff (TGSIM and TGSIMGPP, longs mails and lots of ideas,
537       author of the little rom included, very nice guy)
538    -- Marat Fayzullin (BASE SOURCE for 6502)
539    -- Bero (Additional SOURCE)
540    -- Hmmx (More additional SOURCE)
541    -- DJ Delorie (DJGPP, what a great thing!)
542    -- Shawn Hargreaves (ALLEGRO is great)
543    -- David Michel (MAGIC ENGINE is still the best emu!!!, futhermore he's
544       very friendly and fair-play. Also the Author of the Magic Kit which
545       allow you to create your own PC Engine games)
546    -- The info-zip group for making unzipping easy (sometimes ^_^)
547
548    -- Zophar domain (www.zophar.net)
549    -- Jens Christian Restemeier (DOCS)
550    -- Joe LoCicero (DOCS)
551    -- David Woodford (DOCS)
552    -- Videoman (DOCS)
553    -- Charles W Sandmann (CWSDPMI, this program is under GPL license and you
554       can get the source at http://www.delorie.com/djgpp/ )
555    -- Markus F.X.J. Oberhumer & Laszlo Molnar (contribution to UPX, an
556       excellent EXE-packer used in this release)
557
558    Diverse thanks:
559    -- Bouli (www.multimania.com/booemu/
560              arcades.le-village.com/megrom/)
561       for using Hu-Go! for his screenshots ;)
562    -- Michael Sheldows (www.homestead.com/sheldows)
563       for trying to port Hu-Go! to a new OS of his own
564    -- Mr Iceberg (www.multimania.com/pceaudit)
565       for offering a PCE ROM manager based on FPCEID
566
567    Others I may have forgotten (Sorry!!!)
568    (send me a mail if you consider you should be credited...)
569
570    If you have any questions, suggestions, propositions for help or
571    mirroring, bug reporting, or non working games, don't hesitate,
572    send a e-mail (I love e-mails) to : ZEOGRAD@ZEOGRAD.COM
573
574    (You can also send money, car keys, credit card with PIN number,
575    video games, girlfriends, ask for snail mail address !! ;)
576
577      .  ___   ____                _________           ___
578       .|  `|_|   `| ___ ___  __ .|    ____/ _______ .|  `|
579     .:|     _     ||  `|  `|(__)|    (_  `|/   _  `\|____/:.
580...:::||____|:|____||_______/::::\_________/\_______/(____)::::...
581      `-*-- -  -   -    -      -            -              ^cls
582
583