diff --git a/data/Tupfile.lua b/data/Tupfile.lua index 0625e39e2..1c8b4529a 100644 --- a/data/Tupfile.lua +++ b/data/Tupfile.lua @@ -777,8 +777,8 @@ if tup.getconfig('NO_NASM') ~= 'full' then {"kolibrios/games/wolf3d/", "../contrib/games/wolf3d/wolf3d"}, {"kolibrios/games/wolf3d/", "common/games/wolf3d/*"}, {"kolibrios/emul/dgen/dgen", PROGS .. "/emulator/dgen-sdl-1.33/dgen"}, - {"kolibrios/emul/dgen/dgen.man", PROGS .. "/emulator/dgen-sdl-1.33/dgen.man"}, - {"kolibrios/emul/dgen/dgenrc.man", PROGS .. "/emulator/dgen-sdl-1.33/dgenrc.man"}, + {"kolibrios/emul/dgen/dgen.html", PROGS .. "/emulator/dgen-sdl-1.33/dgen.html"}, + {"kolibrios/emul/dgen/dgenrc.html", PROGS .. "/emulator/dgen-sdl-1.33/dgenrc.html"}, }) end -- For russian build, add russian-only programs. diff --git a/programs/emulator/dgen-sdl-1.33/dgen.man b/programs/emulator/dgen-sdl-1.33/dgen.1 similarity index 93% rename from programs/emulator/dgen-sdl-1.33/dgen.man rename to programs/emulator/dgen-sdl-1.33/dgen.1 index cde0021a3..079a10606 100644 --- a/programs/emulator/dgen-sdl-1.33/dgen.man +++ b/programs/emulator/dgen-sdl-1.33/dgen.1 @@ -100,7 +100,7 @@ To specify more than one code, separate them with commas (do .Ar not use spaces). .It Fl r Ar RCFILE -Parse another rc file after /tmp0/1/.dgen/dgenrc. Values in the specified file +Parse another rc file after $HOME/.dgen/dgenrc. Values in the specified file override those in the preceding files. .It Fl X Ar XFACT Scale the window XFACT times in the X direction. XFACT must be a positive @@ -177,22 +177,27 @@ Display current value for variable .Ar name . .El .Sh FILES -.Bl -tag -width /tmp0/1/.dgen/dgen/saves/* -compact -.It Pa /tmp0/1/.dgen/dgenrc +.Bl -tag -width $HOME/.dgen/dgen/saves/* -compact +.It Pa $HOME/.dgen/dgenrc Contains user settings for the emulator. -.It Pa /tmp0/1/.dgen/dgenrc.auto +.It Pa $HOME/.dgen/dgenrc.auto Generated file containing saved user settings. -.It Pa /tmp0/1/.dgen/saves/* +.It Pa $HOME/.dgen/saves/* Save states generated by the emulator. -.It Pa /tmp0/1/.dgen/ram/* +.It Pa $HOME/.dgen/ram/* Battery-backup RAM images, generated by the emulator for ROMs with save RAM. -.It Pa /tmp0/1/.dgen/screenshots/* +.It Pa $HOME/.dgen/screenshots/* Screenshots are generated there. -.It Pa /tmp0/1/.dgen/roms/* +.It Pa $HOME/.dgen/roms/* ROMs default search path. -.It Pa /tmp0/1/.dgen/demos/* +.It Pa $HOME/.dgen/demos/* Demos default search path. .El +.Sh SEE ALSO +.Xr gzip 1 , +.Xr bzip2 1 , +.Xr zip 1 , +.Xr dgenrc 5 .Sh AUTHORS This manual page was written by .An Joe Groff Aq joe@pknet.com . diff --git a/programs/emulator/dgen-sdl-1.33/dgen.html b/programs/emulator/dgen-sdl-1.33/dgen.html new file mode 100644 index 000000000..591648370 --- /dev/null +++ b/programs/emulator/dgen-sdl-1.33/dgen.html @@ -0,0 +1,265 @@ + + + + + + + DGEN(1) + + + + + + + + +
DGEN(1)General Commands ManualDGEN(1)
+
+
+

+

dgenSega + Genesis/Mega Drive emulator

+
+
+

+ + + + + +
dgen[-Pfhmv] [-R + (J|U|E)] [-H + HZ] [-D + DEMONAME] [-d + DEMONAME] [-n + USEC] [-p + CODE,CODE...] [-r + RCFILE] [-X + XFACT] [-Y + YFACT] [-S + FACT] [-g + (0|1)] [-G + XxY] [-s + SLOT] [romname [...]]
+
+
+

+

The ROM image in the file romname is + executed, as emulated on a Sega Genesis or Mega Drive running in 60Hz NTSC + mode (unless the -P option is specified, in which + case 50Hz PAL mode is used). romname should be in raw + binary or SMD format, and may be compressed with gzip(1), + zip(1), or bzip2(1).

+

When romname isn't specified, DGen starts + without a ROM. It can be loaded later from the prompt. When more than a + single romname is specified, they are executed + sequentially.

+

The options are as follows:

+
+
+ HZ
+
Use a custom frame rate, can be used to accelerate or slow down + emulation.
+
+
Emulate 50Hz PAL mode (as used in European models of the Mega Drive).
+
+ (J|U|E)
+
Emulator region. Without this option, DGen uses the first region mentioned + in the ROM header. It should be combined with -P + for PAL mode. See below. +
+
(none)
+
Autodetect (NTSC, 60Hz)
+
+
Autodetect (PAL, 50Hz)
+
+ J
+
Japan (NTSC, 60Hz)
+
+ J -P
+
Japan (PAL, 50Hz)
+
+ E
+
Europe (NTSC, 60Hz, music will certainly play too fast)
+
+ E -P
+
Europe (PAL, 50Hz)
+
+ U
+
America (NTSC, 60Hz)
+
+ U -P
+
Same as -R E + -P
+
+
+
+
Run fullscreen, if possible.
+
+
Show a brief synopsis of all options.
+
+
MinGW only. This option prevents DGen from detaching from its control + console.
+
+
Show the version number, and exit.
+
+ DEMONAME
+
Play back a demo recorded with the -d option.
+
+ DEMONAME
+
Record a demo of the program running, which can be later replayed with the + -D switch.
+
+ USEC
+
Sleep for a number of microseconds after every frame, to give time to + other processes.
+
+ CODE,CODE...
+
Modify the ROM image in memory, using Game Genie or Hex style codes. Game + Genie codes are of the form ABCD-EFGH and Hex codes + are in the form 123456:ABCD. To specify more than + one code, separate them with commas (do not use + spaces).
+
+ RCFILE
+
Parse another rc file after $HOME/.dgen/dgenrc. Values in the specified + file override those in the preceding files.
+
+ XFACT
+
Scale the window XFACT times in the X direction. XFACT must be a positive + integer.
+
+ YFACT
+
Scale the window YFACT times in the Y direction. YFACT must be a positive + integer.
+
+ FACT
+
Scale the window FACT times in both directions. FACT must be a positive + integer.
+
+ (0|1)
+
Enable/disable OpenGL (if compiled-in).
+
+ XxY
+
Desired window size (e.g. 640x480, 800x600, etc.)
+
+ SLOT
+
Load the saved state from the given slot at startup (0-9)
+
+
+
+

+

A minimalist interactive prompt inspired from + vi(1) can be used to perform various operations described + below. It is triggered by pressing colon (:), the default key. Command-line + editing, history and completion are supported.

+
+

+
+
{quit, exit, q}
+
Quit, or load the next romname from command-line, if + any.
+
{load, open, plug, o} filename
+
Load a given ROM filename.
+
{unload, close, unplug}
+
Unload the current ROM.
+
config_load filename
+
Load configuration from file filename.
+
config_save filename
+
Save current configuration to file filename.
+
reset
+
Genesis reset.
+
{ctv_push, ctv_pop, ctv_none}
+
Manage the stack of Crap TV filters (if compiled-in).
+
calibrate number
+
Interactive calibration of the specified gamepad (1 or 2). If + number isn't specified, default to 1.
+
unbind binding [...]
+
Remove specified bindings (variables prefixed with "bind_"). See + dgenrc(5) for more information about them.
+
vgmdump start filename
+
 
+
vgmdump stop
+
Manages VGM dumping/logging. If the second argument is + start VGM dumping will be started at the path + specified by the third argument. If the second argument is + stop VGM dumping will be stopped and the dump + finalized.
+
+
+
+

+

All configuration variables from dgenrc(5) can + be displayed and modified interactively, with immediate effect.

+
+
{int_name, bool_name, key_name, joy_name, ...} {value}
+
Affect value to variable + name.
+
{int_name, bool_name, key_name, joy_name, ...}
+
Display current value for variable name.
+
+
+
+
+

+
+
$HOME/.dgen/dgenrc
+
Contains user settings for the emulator.
+
$HOME/.dgen/dgenrc.auto
+
Generated file containing saved user settings.
+
$HOME/.dgen/saves/*
+
Save states generated by the emulator.
+
$HOME/.dgen/ram/*
+
Battery-backup RAM images, generated by the emulator for ROMs with save + RAM.
+
$HOME/.dgen/screenshots/*
+
Screenshots are generated there.
+
$HOME/.dgen/roms/*
+
ROMs default search path.
+
$HOME/.dgen/demos/*
+
Demos default search path.
+
+
+
+

+

gzip(1), bzip2(1), + zip(1), dgenrc(5)

+
+
+

+

This manual page was written by Joe Groff + ⟨joe@pknet.com⟩. +
+ Updated by zamaz + ⟨zamaz@users.sourceforge.net⟩.

+
+
+

+

There are known emulation bugs, see BUGS in DGen source + package.

+

+
+ Report bugs to + ⟨http://sourceforge.net/projects/dgen/⟩.

+
+
+ + + + + +
July 26, 2014Linux 6.6.9-arch1-1
+ + diff --git a/programs/emulator/dgen-sdl-1.33/dgen_tobin.1 b/programs/emulator/dgen-sdl-1.33/dgen_tobin.1 new file mode 100644 index 000000000..3886f6558 --- /dev/null +++ b/programs/emulator/dgen-sdl-1.33/dgen_tobin.1 @@ -0,0 +1,25 @@ +.Dd October 28, 2011 +.Dt DGEN 1 +.Sh NAME +.Nm dgen_tobin +.Nd Convert SMD-format Genesis/Mega Drive image to raw (BIN) format +.Sh SYNOPSIS +.Nm dgen_tobin +.Ar FROMSMD +.Ar TOBIN +.Sh DESCRIPTION +The ROM image +.Ar FROMSMD +is converted into a raw image, as seen by the Genesis/Mega Drive console +itself. The raw image is written into +.Ar TOBIN . +If compiled with libarchive support and +.Ar FROMSMD +is compressed in a known format, it will also be transparently decompressed. +.Sh SEE ALSO +.Xr dgen 1 , +.Xr libarchive 3 +.Sh AUTHORS +This manual page was written by +.An Joe Groff Aq joe@pknet.com . +.An Updated by zamaz Aq zamaz@users.sourceforge.net . diff --git a/programs/emulator/dgen-sdl-1.33/dgenrc.man b/programs/emulator/dgen-sdl-1.33/dgenrc.5 similarity index 99% rename from programs/emulator/dgen-sdl-1.33/dgenrc.man rename to programs/emulator/dgen-sdl-1.33/dgenrc.5 index deee98d70..e82aab9ba 100644 --- a/programs/emulator/dgen-sdl-1.33/dgenrc.man +++ b/programs/emulator/dgen-sdl-1.33/dgenrc.5 @@ -6,10 +6,10 @@ .Nd file containing settings for .Xr dgen 1 .Sh SYNOPSIS -/tmp0/1/.dgen/dgenrc +$HOME/.dgen/dgenrc .Sh DESCRIPTION The file -.Pa /tmp0/1/.dgen/dgenrc +.Pa $HOME/.dgen/dgenrc is parsed by .Xr dgen 1 when the emuator is started. It is used to set controller keys, as well as other diff --git a/programs/emulator/dgen-sdl-1.33/dgenrc.html b/programs/emulator/dgen-sdl-1.33/dgenrc.html new file mode 100644 index 000000000..e04b1cea1 --- /dev/null +++ b/programs/emulator/dgen-sdl-1.33/dgenrc.html @@ -0,0 +1,615 @@ + + + + + + + DGENRC(5) + + + + + + + + +
DGENRC(5)File Formats ManualDGENRC(5)
+
+
+

+

dgenrcfile + containing settings for dgen(1)

+
+
+

+

$HOME/.dgen/dgenrc

+
+
+

+

The file $HOME/.dgen/dgenrc is parsed by + dgen(1) when the emuator is started. It is used to set + controller keys, as well as other characteristics of the emulation. The + contents of this file may be overriden with the contents of another + similarly-formatted file, via the -r commandline + switch.

+
+
+

+

Each rc file consists of an unlimited number of lines, which each + have the format 'fieldname = value'. A line may also be a comment, if it + begins with the hash mark (#) character.

+

Each fieldname is prepended by a name, which + identifies the type of this field:

+
+
key_*
+
A key value. May be set to a key identifier listed in the + KEY IDENTIFIERS section + below.
+
joy_*
+
A joystick/joypad value. May be set to a joystick identifier listed in the + JOYSTICK IDENTIFIERS + section below.
+
mou_*
+
A mouse action. May be set to a mouse identifier listed in the + MOUSE IDENTIFIERS section + below.
+
bool_*
+
A boolean value. "false", "no", and "0" + values are taken as false, while "true", "yes", and + any number except 0 are taken as true.
+
int_*
+
An integer value, greater than or equal to 0.
+
str_*
+
A string value, can be empty.
+
+

Some fields take special value sets, which are addressed in their + respective sections. None of the field names or values are + case-sensitive.

+

The fields fall under a few basic groups. They are listed below, + with their default values in brackets ([]):

+

All of them can be modified interactively from the prompt, as + described in dgen(1).

+
+
+

+
+
key_pad1_up [up]
+
 
+
key_pad1_down [down]
+
 
+
key_pad1_left [left]
+
 
+
key_pad1_right [right]
+
 
+
key_pad1_a [a]
+
 
+
key_pad1_b [s]
+
 
+
key_pad1_c [d]
+
 
+
key_pad1_x [q]
+
 
+
key_pad1_y [w]
+
 
+
key_pad1_z [e]
+
 
+
key_pad1_mode [backspace]
+
 
+
key_pad1_start [return]
+
Map keys to the first Genesis controller. Each of these fields has a + corresponding "key_pad2" field, to map to the second + controller.
+
joy_pad1_up [joystick0-axis1-min]
+
 
+
joy_pad1_down [joystick0-axis1-max]
+
 
+
joy_pad1_left [joystick0-axis0-min]
+
 
+
joy_pad1_right [joystick0-axis0-max]
+
 
+
joy_pad1_a [joystick0-button0]
+
 
+
joy_pad1_b [joystick0-button3]
+
 
+
joy_pad1_c [joystick0-button1]
+
 
+
joy_pad1_x [joystick0-button6]
+
 
+
joy_pad1_y [joystick0-button4]
+
 
+
joy_pad1_z [joystick0-button5]
+
 
+
joy_pad1_mode [joystick0-button9]
+
 
+
joy_pad1_start [joystick0-button8]
+
Map joystick/joypad buttons to the first Genesis controller. Each of these + fields has a corresponding "joy_pad2" field, to map to the + second controller.
+
bool_joystick [true]
+
Use joysticks to emulate the controllers. Note that the keyboard keys will + still work if this value is set. This field is only available if you have + joystick support enabled.
+
int_mouse_delay [50]
+
Number of milliseconds to wait after the last mouse motion event to + release buttons bound to such events.
+
+
+
+

+
+
bind_{keysym} action
+
 
+
bind_{joypad} action
+
 
+
bind_{mouse} action
+
Defines a new keyboard, joystick/joypad or mouse binding to an arbitrary + action. These variables use the keysym format as + defined in KEY IDENTIFIERS, the + joypad format as defined in + JOYSTICK IDENTIFIERS, or + the mouse format as defined in + MOUSE IDENTIFIERS. When + action is prefixed with "key_", + "joy_" or "mou_", it becomes an alias to the + corresponding variable in + CONTROLLERS. Otherwise, it is + interpreted as if entered at the prompt, and can be used to modify + variables or execute commands (see dgenrc(5) for more + information). No bindings are defined by default.
+
bind_"{keysym|joypad|mouse} [{keysym|joypad|mouse} [...]]" + action
+
Alternate syntax that supports combining several identifiers to perform + action. Controller types can be mixed. Identifiers + are separated by spaces. To avoid syntax errors, spaces must be properly + escaped or quoted.
+
+
+
+

+
+
bool_sound [true]
+
Enable the sound subsystem.
+
int_soundrate [44100]
+
Sound frequency to play at, in hertz (Hz).
+
int_soundsegs [8]
+
Number of sound segments to use for sound buffering. Lower values + guarantee low latency. Increment this only if the sound becomes + choppy.
+
int_soundsamples [0]
+
Size of the system sound buffer, in samples (samples are the sound unit, + sound rate is how many of them are played every second). Specifying 0 + automatically choses the safest value. If you experience sound issues + int_soundsegs is unable to solve, try to change this. Increasing it will + cause noticeable audio lag (it is unfortunately often required on slower + machines).
+
int_volume [100]
+
Volume level, in percent. Values above 100 cause distorsion.
+
key_volume_inc [=]
+
 
+
key_volume_dec [-]
+
 
+
joy_volume_inc []
+
 
+
joy_volume_dec []
+
 
+
mou_volume_inc []
+
 
+
mou_volume_dec []
+
Bindings for volume control.
+
bool_mjazz [false]
+
MJazz option - puts 2 more FM chips in the Megadrive for a sort of 22 + channel sound boost. Can sound good. Slows things down a lot.
+
+
+
+

+
+
int_depth [0]
+
Color depth (bits per pixel). Allowed values are 0 (automatic), 8, 15, 16, + 24 and 32. Ignored in OpenGL mode.
+
int_width [-1]
+
 
+
int_height [-1]
+
Desired window width and height.
+
bool_opengl [true]
+
Use the OpenGL renderer, if it is available.
+
bool_opengl_stretch [true]
+
Let OpenGL stretch the screen.
+
bool_opengl_linear [true]
+
Use GL_LINEAR for textures filtering instead of GL_NEAREST.
+
bool_opengl_32bit [true]
+
Use 32 bit textures. They require more memory but are usually faster than + 16 bit textures.
+
bool_opengl_square [false]
+
Use square textures. Wastes a lot of memory but may solve OpenGL + initialization failures.
+
bool_fullscreen [false]
+
Try to run fullscreen, if possible.
+
int_scale [-1]
+
 
+
int_scale_x [-1]
+
 
+
int_scale_y [-1]
+
Amount by which to scale the rendered screen from the default resolution. + See scaling filters.
+
bool_aspect [true]
+
Retain original aspect ratio when resizing window.
+
key_fullscreen_toggle [alt-enter]
+
 
+
joy_fullscreen_toggle []
+
 
+
mou_fullscreen_toggle []
+
Button to toggle fullscreen mode (this may do nothing if SDL doesn't + support fullscreen toggling on your platform.)
+
int_info_height [-1]
+
Height of the text area at the bottom of the screen, in pixels. This also + affects the font size. Values smaller than the minimum font size make DGen + redirect text to stdout instead. The default value of -1 makes DGen choose + the proper height.
+
bool_fps [false]
+
Display the current number of frames per second.
+
bool_buttons [false]
+
Display pressed buttons. Can be used to help configuring them.
+
bool_swab [false]
+
Swap bytes in the video output. Sometimes useful when video output is + located on a different system. This is implemented as a CTV filter which + must be compiled-in to work.
+
bool_doublebuffer [true]
+
Toggle double buffering. Enabling this should prevent screen tearing from + happening. Disabling this may improve the number of displayed frames per + second on some systems.
+
bool_screen_thread [false]
+
When enabled, a separate thread is created to offload the displaying of + frames. This is only useful on slower machines where flipping video + buffers takes time, especially when V-sync is enabled and doing so blocks + until the next frame without consuming CPU time (sometimes the case when + bool_doublebuffer is enabled). This currently has no effect when OpenGL is + enabled and only works if multi-threading support is compiled-in.
+
+
+
+

+
+
key_slot_X [X]
+
 
+
joy_slot_X []
+
 
+
mou_slot_X []
+
Sets the current save-state slot to number X.
+
key_slot_next [f8]
+
 
+
joy_slot_next []
+
 
+
mou_slot_next []
+
Switch to the next save-slot.
+
key_slot_prev [f7]
+
 
+
joy_slot_prev []
+
 
+
mou_slot_prev []
+
Switch to the previous save-slot.
+
key_save [f2]
+
 
+
joy_save []
+
 
+
mou_save []
+
Saves state to the current slot.
+
key_load [f3]
+
 
+
joy_load []
+
 
+
mou_load []
+
Loads state from the current slot.
+
+
+
+

+
+
key_fix_checksum [f1]
+
 
+
joy_fix_checksum []
+
 
+
mou_fix_checksum []
+
Fixes the checksum value. Some older games will freeze with a red screen + if the ROM has been hacked or modified with Game Genie codes. If it does, + pressing this, and resetting should fix the problem.
+
key_quit [escape]
+
 
+
joy_quit []
+
 
+
mou_quit []
+
Exit DGen or switch to the next ROM on the command-line.
+
key_craptv_toggle [f5]
+
 
+
joy_craptv_toggle []
+
 
+
mou_craptv_toggle []
+
Toggles Crap-TV image filters. These filters aren't available in 8 bpp + mode.
+
key_scaling_toggle [f6]
+
 
+
joy_scaling_toggle []
+
 
+
mou_scaling_toggle []
+
Toggles scaling algorithms. See scaling_startup below.
+
key_reset [tab]
+
 
+
joy_reset []
+
 
+
mou_reset []
+
Restart the Genesis emulation.
+
key_cpu_toggle [f11]
+
 
+
joy_cpu_toggle []
+
 
+
mou_cpu_toggle []
+
Switch CPU emulators. The x86 assembly CPU emulator StarScream is fast, + but has glitches which affect a few games. Switching to the slower Musashi + core will fix these problems, at a speed penalty.
+
key_z80_toggle [f10]
+
 
+
joy_z80_toggle []
+
 
+
mou_z80_toggle []
+
Switch Z80 emulators. MZ80 is a bit faster than CZ80, particularly in its + assembly version (only available for x86), but CZ80 works with more games. + This key can also disable Z80 emulation.
+
key_stop [z]
+
 
+
joy_stop []
+
 
+
mou_stop []
+
Pause emulation, so you can concentrate on real life for a few seconds. + :)
+
key_game_genie [f9]
+
 
+
joy_game_genie []
+
 
+
mou_game_genie []
+
Enter a Game Genie or Hex code. This key also works in stopped mode.
+
key_screenshot [f12]
+
 
+
joy_screenshot []
+
 
+
mou_screenshot []
+
Take a screenshot. Not available in 8 bpp mode.
+
key_prompt [:]
+
 
+
joy_prompt []
+
 
+
mou_prompt []
+
Pause emulation and display interactive prompt. Also works in stopped + mode.
+
key_debug_enter [`]
+
 
+
joy_debug_enter []
+
 
+
mou_debug_enter []
+
Break into the debugger. Only meaningful if debugger support is + compiled-in.
+
+
+
+

+
+
int_hz [60]
+
Video refresh rate. The default is 60 as in NTSC consoles.
+
bool_pal [false]
+
When true, a PAL console is emulated. This should be used in combination + with int_hz above for 50Hz emulation.
+
region [' ']
+
U for America (NTSC), E for Europe (PAL), J for Japan (NTSC), X for Japan + (PAL), or empty space for autodetection (the default). Overrides bool_pal + and int_hz.
+
str_region_order [JUEX]
+
Regions DGen is allowed to emulate when autodetection is enabled, ordered + by preference.
+
emu_m68k_startup [musa]
+
Useful when both Musashi and StarScream are compiled-in. This option + selects the default emulator to use ("musa" for Musashi, + "star" for StarScream, "none" for neither). See + key_cpu_toggle.
+
emu_z80_startup [cz80]
+
Useful when both CZ80 and MZ80 are compiled-in. This option selects the + default emulator to use ("cz80", "mz80" or + "none", if you want to disable it altogether). See + key_z80_toggle.
+
bool_autoload [false]
+
Automatically load the saved state from slot 0 when DGen starts.
+
bool_autosave [false]
+
Automatically save the saved state to slot 0 upon exit. Setting both of + these fields true, you can exit DGen, and automatically start a game where + you left off when you start it again.
+
bool_autoconf [true]
+
Automatically dump the current configuration to dgenrc.auto before + exiting. This file is always loaded before dgenrc at startup.
+
bool_frameskip [true]
+
Automatically skip frames, when it is necessary to maintain proper + emulation speed. You may want to disable sound or set int_nice to a + nonzero value when setting this to false.
+
int_nice [0]
+
If set to a non-zero value, DGen will call usleep(3) + with the specified parameter after rendering each frame. This will slow + the program down (if it is running too fast on your computer), and allow + the operating system to reclaim some CPU time.
+
ctv_craptv_startup [off]
+
CTV filter to use by default. Available filters are "blur", + "scanline", "interlace" and "swab".
+
scaling_startup [stretch]
+
Scaler to use when display resolution is larger than original screen. + Available filters are "stretch", "scale", + "hqx", "hqx stretch", "scale2x", + "scale2x stretch" and "none".
+
bool_show_carthead [false]
+
Show cartridge header info at startup.
+
bool_raw_screenshots [false]
+
Generate unfiltered screenshots.
+
str_rom_path ["roms"]
+
Directory where DGen should look for ROMs by default. It's relative to + DGen's home directory, unless an absolute path is provided.
+
+
+
+

+
+
bool_vdp_hide_plane_a [false]
+
 
+
bool_vdp_hide_plane_b [false]
+
 
+
bool_vdp_hide_plane_w [false]
+
 
+
bool_vdp_hide_sprites [false]
+
Hide various planes during frame rendering. Require VDP debugging to be + compiled-in.
+
bool_vdp_sprites_boxing [false]
+
 
+
int_vdp_sprites_boxing_fg [0xffff00] (yellow)
+
 
+
int_vdp_sprites_boxing_bg [0x00ff00] (green)
+
Toggle sprites boxing and configure its colors. Require VDP debugging to + be compiled-in. "fg" is for sprites with the high priority bit + set, "bg" is for the others. Color format is 0xRRGGBB.
+
+
+
+

+

See the file "sample.dgenrc" in the DGen/SDL + distribution.

+
+
+

+

A key identifier can have the prefixes "shift-", + "ctrl-", "alt-" and "meta-", or any + combination thereof, to require that the specified modifier be pressed in + combination with the key. For example, the identifier "alt-enter" + would correspond to holding down the Alt key while pressing Enter.

+

The "shift-" modifier only works with keys that don't + generate symbols (such as arrow keys). Otherwise their UTF-8 representation + must be used directly.

+

The numbers "0" through "9" ("kp_0" + through "kp_9" for the numeric keypad), letters "A" + through "Z", and function keys "F1" through + "F12" map to their key equivalents. In addition, the following + identifiers map to their similarly-labeled key counterparts. Identifiers on + the same line map to the same key:

+
+
escape
+backspace
+tab
+capslock	caps_lock
+lshift		shift_l
+rshift		shift_r
+lctrl		ctrl_l
+lmeta		meta_l
+lalt		alt_l
+ralt		alt_r
+rmeta		meta_r
+rctrl		ctrl_r
+return		enter
+space
+
+scrollock	scroll_lock
+numlock		num_lock
+
+insert
+home
+page_up		pageup
+delete
+end
+page_down	pagedown
+left
+right
+up
+down
+
+kp_home
+kp_up
+kp_pageup	kp_page_up
+kp_left
+kp_right
+kp_end
+kp_down
+kp_pagedown	kp_page_down
+kp_insert
+kp_delete	kp_period
+
+kp_enter
+kp_divide
+kp_minus
+kp_multiply
+kp_plus
+
+
+
+

+

Like key identifiers, joystick (or joypad) identifiers describe a + joystick event. Each detected joystick is numbered starting from 0. Three + different event types are supported.

+
+
Buttons: joystickX-buttonY
+
For joystick/joypad number X, button number Y. "button" can be + abbreviated as "b".
+
Axes: joystickX-axisY-min, joystickX-axisY-max
+
For joystick/joypad number X, axis number Y, and its position, which is + either "min" (also "n", "negative") or + "max" (also "p", "positive"). + "axis" can be abbreviated as "a".
+
Hats: joystickX-hatY-{direction}
+
For joystick/joypad number X, hat number Y and direction. "hat" + can be abbreviated as "h". Possible directions are + "up", "right", "down", + "left".
+
+
+
+

+

These identifiers describe a mouse event. Each detected mouse is + numbered starting from 0. Two different event types are supported.

+
+
Buttons: mouseX-buttonY
+
For mouse number X, button number Y. "button" can be abbreviated + as "b".
+
Motions: mouseX-{direction}
+
For mouse number X and direction. Possible directions are "up", + "right", "down", "left".
+
+
+
+

+

dgen(1)

+
+
+

+

This manual page was written by Joe Groff + ⟨joe@pknet.com⟩. +
+ Updated by zamaz + ⟨zamaz@users.sourceforge.net⟩.

+
+
+ + + + + +
July 26, 2014Linux 6.6.9-arch1-1
+ + diff --git a/programs/emulator/dgen-sdl-1.33/getopt.c b/programs/emulator/dgen-sdl-1.33/getopt.c index 1203c7b4a..54064a394 100644 --- a/programs/emulator/dgen-sdl-1.33/getopt.c +++ b/programs/emulator/dgen-sdl-1.33/getopt.c @@ -179,12 +179,6 @@ static char *my_index(const char *str, int chr); extern char *getenv(); #endif -#ifdef _KOLIBRI -char* getenv(const char *name) { - return NULL; -} -#endif - static int my_strlen(const char *str) { int n = 0; diff --git a/programs/emulator/dgen-sdl-1.33/sdl/sdl.cpp b/programs/emulator/dgen-sdl-1.33/sdl/sdl.cpp index c206eaf28..40f598fb3 100644 --- a/programs/emulator/dgen-sdl-1.33/sdl/sdl.cpp +++ b/programs/emulator/dgen-sdl-1.33/sdl/sdl.cpp @@ -54,9 +54,7 @@ extern "C" { #endif #ifdef _KOLIBRI -extern "C" { #include -} #endif /// Number of microseconds to sustain messages diff --git a/programs/emulator/dgen-sdl-1.33/system.c b/programs/emulator/dgen-sdl-1.33/system.c index 5f69f989a..f7e2d10e2 100644 --- a/programs/emulator/dgen-sdl-1.33/system.c +++ b/programs/emulator/dgen-sdl-1.33/system.c @@ -6,9 +6,7 @@ #include #include #include -#ifndef _KOLIBRI #include -#endif #include #ifndef __MINGW32__ #include @@ -41,11 +39,6 @@ #endif #endif -#ifdef _KOLIBRI -char* kos_dgen_userdir = "/tmp0/1"; - -#endif - static const char *fopen_mode(unsigned int mode) { static const char *modes[4][2] = { @@ -161,6 +154,11 @@ char *dgen_userdir(char *buf, size_t *size) if ((pwd == NULL) || (pwd->pw_dir == NULL)) return NULL; sz_dir = strlen(pwd->pw_dir); +#elif defined _KOLIBRI + char *kos_home = getenv("HOME"); + if (!kos_home) + return NULL; + sz_dir = strlen(kos_home); #endif if (buf != NULL) { sz = *size; @@ -184,7 +182,7 @@ char *dgen_userdir(char *buf, size_t *size) } #ifndef __MINGW32__ #ifdef _KOLIBRI - strncpy(path, kos_dgen_userdir, sz_dir); + strncpy(path, kos_home, sz_dir); #else strncpy(path, pwd->pw_dir, sz_dir); #endif @@ -234,7 +232,10 @@ char *dgen_dir(char *buf, size_t *size, const char *sub) return NULL; sz_dir = strlen(pwd->pw_dir); #else - sz_dir = strlen(kos_dgen_userdir); + char *kos_home = getenv("HOME"); + if (!kos_home) + return NULL; + sz_dir = strlen(kos_home); #endif #endif @@ -266,7 +267,7 @@ char *dgen_dir(char *buf, size_t *size, const char *sub) #ifndef _KOLIBRI strncpy(path, pwd->pw_dir, sz_dir); #else - strncpy(path, kos_dgen_userdir, sz_dir); + strncpy(path, kos_home, sz_dir); #endif #else if (SHGetFolderPath(NULL, (CSIDL_APPDATA | CSIDL_FLAG_CREATE), @@ -355,12 +356,10 @@ FILE *dgen_freopen(const char *relative, const char *file, unsigned int mode, goto error; size = strlen(path); } -#ifndef KOLIBRI + if ((mode & (DGEN_WRITE | DGEN_APPEND)) && (path != NULL)) mkdir(path, 0777); /* XXX make that recursive */ -#else - mkdir(path, 0777); -#endif + file_size = strlen(file); if ((tmp = realloc(path, (size + !!size + file_size + 1))) == NULL) goto error; @@ -660,7 +659,6 @@ static void free_pppc(char ***pppc, size_t skip) */ static char **complete_path_simple(const char *path, size_t len) { -#ifndef _KOLIBRI size_t rlen; const char *cpl; char *root; @@ -745,7 +743,7 @@ error: free(*(ret++)); free(ret); } -#endif + return NULL; }