1# This is a sample .dgenrc file 2# It simply sets everything to their default values 3# Lines that BEGIN with a hash (#) (i.e. NOTHING before it) are comments. 4# Also, everything after the "field = value" is ignored (but don't count on it) 5 6# Note that your own RC file doesn't need to include every field like this 7# one does, any ones you exclude simply have their compiled-in default values. 8 9# Also, you can have multiple RC files, and use the -r option to dgen 10# to pick the rc you want to load. 11 12# Fields beginning with "key_" take key names. The valid key names are listed 13# in the dgenrc(5) manpage. 14 15# Fields beginning with "bool_" are boolean, i.e. they take a true or false 16# value: 17# "true", "yes", any number except 0: true 18# "false", "no", "0" : false 19 20# Fields beginning with "int_" take a _positive_ integer. Simple enough, huh? ;) 21 22# The syntax and fields of this file are documented in a bit more detail in the 23# dgenrc(5) manpage. 24 25# These are the controls for pad 1 26key_pad1_up = up 27key_pad1_down = down 28key_pad1_left = left 29key_pad1_right = right 30key_pad1_a = a 31key_pad1_b = s 32key_pad1_c = d 33key_pad1_x = q 34key_pad1_y = w 35key_pad1_z = e 36key_pad1_mode = backspace 37key_pad1_start = return 38 39# If you prefer W.A.S.D type controls (again player 1): 40#key_pad1_up = w 41#key_pad1_down = s 42#key_pad1_left = a 43#key_pad1_right = d 44#key_pad1_a = j 45#key_pad1_b = k 46#key_pad1_c = l 47#key_pad1_x = u 48#key_pad1_y = i 49#key_pad1_z = o 50#key_pad1_mode = backspace 51#key_pad1_start = return 52 53# Joystick/joypad definitions for pad 1 54# Defaults are tailored for Gravis GamePad Pros. (10 button) 55joy_pad1_up = joystick0-axis1-min 56joy_pad1_down = joystick0-axis1-max 57joy_pad1_left = joystick0-axis0-min 58joy_pad1_right = joystick0-axis0-max 59joy_pad1_a = joystick0-button0 60joy_pad1_b = joystick0-button3 61joy_pad1_c = joystick0-button1 62joy_pad1_x = joystick0-button6 63joy_pad1_y = joystick0-button4 64joy_pad1_z = joystick0-button5 65joy_pad1_mode = joystick0-button9 66joy_pad1_start = joystick0-button8 67 68# The same for pad 2 69# Yes, I KNOW the default player 2 keys are awful. Pick your own! 70key_pad2_up = kp_up 71key_pad2_down = kp_down 72key_pad2_left = kp_left 73key_pad2_right = kp_right 74key_pad2_a = delete 75key_pad2_b = end 76key_pad2_c = page_down 77key_pad2_x = insert 78key_pad2_y = home 79key_pad2_z = page_up 80key_pad2_mode = kp_plus 81key_pad2_start = kp_enter 82 83# Joystick/joypad definitions for pad 2 84# Defaults are tailored for Gravis GamePad Pros. (10 button) 85joy_pad2_up = joystick1-axis1-min 86joy_pad2_down = joystick1-axis1-max 87joy_pad2_left = joystick1-axis0-min 88joy_pad2_right = joystick1-axis0-max 89joy_pad2_a = joystick1-button0 90joy_pad2_b = joystick1-button3 91joy_pad2_c = joystick1-button1 92joy_pad2_x = joystick1-button6 93joy_pad2_y = joystick1-button4 94joy_pad2_z = joystick1-button5 95joy_pad2_mode = joystick1-button9 96joy_pad2_start = joystick1-button8 97 98# Fix checksum, needed by some games with Game Genie codes 99key_fix_checksum = f1 100joy_fix_checksum = '' 101 102# Quit DGen or switch to the next ROM on the command-line. 103key_quit = escape 104joy_quit = '' 105# Toggle crap-tv 106key_craptv_toggle = f5 107joy_craptv_toggle = '' 108# Toggle scaling algorithm. 109key_scaling_toggle = f6 110joy_scaling_toggle = '' 111# Screenshot 112key_screenshot = f12 113joy_screenshot = '' 114# Reset Genesis 115key_reset = tab 116joy_reset = '' 117# Toggle fullscreen mode 118key_fullscreen_toggle = alt-enter 119joy_fullscreen_toggle = '' 120 121# Use this to toggle which CPU core to use, no need to reset! :) 122# If you don't have multiple CPU cores, it won't do anything! 123key_cpu_toggle = f11 124joy_cpu_toggle = '' 125 126# Same as above, for Z80 core. 127key_z80_toggle = f10 128joy_z80_toggle = '' 129 130# This pauses emulation :) 131key_stop = z 132joy_stop = '' 133 134# Display interactive prompt. 135key_prompt = : 136joy_prompt = '' 137 138# This prompts for a Game Genie code. 139key_game_genie = f9 140joy_game_genie = '' 141 142# Press this to break into the debugger. 143key_debug_enter = ` 144joy_debug_enter = '' 145 146# Pick save slot 147key_slot_0 = 0 148key_slot_1 = 1 149key_slot_2 = 2 150key_slot_3 = 3 151key_slot_4 = 4 152key_slot_5 = 5 153key_slot_6 = 6 154key_slot_7 = 7 155key_slot_8 = 8 156key_slot_9 = 9 157joy_slot_0 = '' 158joy_slot_1 = '' 159joy_slot_2 = '' 160joy_slot_3 = '' 161joy_slot_4 = '' 162joy_slot_5 = '' 163joy_slot_6 = '' 164joy_slot_7 = '' 165joy_slot_8 = '' 166joy_slot_9 = '' 167# Save/load game to current slot 168key_save = f2 169key_load = f3 170joy_save = '' 171joy_load = '' 172 173# VDP plane debugging. 174# Won't do anything unless VDP debugging is enabled at compile time. 175bool_vdp_hide_plane_a = no 176bool_vdp_hide_plane_b = no 177bool_vdp_hide_plane_w = no 178bool_vdp_hide_sprites = no 179# Sprites boxing also requires VDP debugging. 180bool_vdp_sprites_boxing = false 181int_vdp_sprites_boxing_fg = 0xffff00 # yellow 182int_vdp_sprites_boxing_bg = 0x00ff00 # green 183 184# There are now multiple CTV effects to try. Pick your favorite: 185# off - No CTV 186# blur - Blur bitmap (this is the CTV from older versions) 187# scanline - Attenuate every other scanline, by Phillip K. Hornung <redx@pknet.com> 188# interlace - Unstable crappy television (I had one that looked like this ;), by me! 189# swab - Swap video output endianness. 190ctv_craptv_startup = off 191 192# M68K and Z80 cores to use at startup. 193emu_m68k_startup = musa 194emu_z80_startup = cz80 195 196# These decide whether DGen should automatically load slot 0 on startup, 197# and/or autosave to slot 0 on exit. 198bool_autoload = no 199bool_autosave = no 200 201# When true, automatically dump the current configuration to dgenrc.auto before 202# exiting. This file is always loaded before dgenrc at startup. 203bool_autoconf = yes 204 205# Skip frames to keep time? (faster, but can make things look bad) 206# This doesn't matter if you have sound enabled, since the sound code has its 207# own frameskipping 208bool_frameskip = yes 209# Show cartridge header info at startup. 210bool_show_carthead = no 211 212# Directory where DGen should look for ROMs by default. It's relative to 213# DGen's home directory, unless an absolute path is provided. 214str_rom_path = "roms" 215 216# Sound? 217bool_sound = yes 218# The sound rate to use. 219int_soundrate = 44100 220# Number of sound segments to use for sound buffering. Lower values guarantee 221# low latency. Increment this only if the sound becomes choppy. 222int_soundsegs = 8 223# Size of the system sound buffer, in samples (samples are the sound unit, 224# sound rate is how many of them are played every second). Specifying 0 225# automatically choses the safest value. If you experience sound issues 226# int_soundsegs is unable to solve, try to change this. Increasing it will 227# cause noticeable audio lag (it is unfortunately often required on slower 228# machines). 229int_soundsamples = 0 230 231# MJazz option - puts 2 more FM chips in the Megadrive for a sort of 22 channel 232# sound boost. Can sound good. Slows things down a lot. 233bool_mjazz = no 234 235# Volume level, in percent. 236int_volume = 100 237 238# Volume control. 239key_volume_inc = '=' 240key_volume_dec = '-' 241joy_volume_inc = '' 242joy_volume_dec = '' 243 244# Binding arbitrary actions is also supported. In the following example, 245# pressing button 2 of the first joystick loads a ROM: 246# 247#bind_j0-b2 = 'load test_rom.bin' 248# 249# Unbinding dangerous keys defined by default (quit and reset) and rebinding 250# them using combinations. 251# 252# Buttons 3, 4 and 6 of the first joystick must be pressed simultaneously to 253# quit: 254# 255#key_quit = '' 256#joy_quit = '' 257#bind_'j0-b3 j0-b6 j0-b4' = joy_quit 258# 259# Button 3 of the first joystick and keys "q" "w" and "e" must be pressed 260# simultaneously to reset the console: 261# 262#key_reset = '' 263#joy_reset = '' 264#bind_'j0-b3 q w e' = joy_reset 265 266# This is how many microseconds DGen should sleep every frame. Even little 267# amounts can decrease CPU overhead significantly, and the default of 20 268# doesn't hurt performance terribly. Of course, set it to 0 if you don't 269# mind DGen eating all your CPU (like me ;) 270int_nice = 0 271 272# Desired window width and height. 273int_width = -1 274int_height = -1 275 276# Color depth (bits per pixel). Allowed values are 0 (automatic), 8, 15, 16, 277# 24 and 32. Ignored in OpenGL mode. 278int_depth = 0 279 280# Video refresh rate. The default is 60 as in NTSC consoles. 281int_hz = 60 282 283# When true, a PAL console is emulated. This should be used in combination 284# with int_hz above for 50Hz emulation. 285bool_pal = false 286 287# Region to emulate: U for America (NTSC), E for Europe (PAL), 288# J for Japan (NTSC), X for Japan (PAL), or empty space for autodetection 289# (the default). 290# Overrides bool_pal and int_hz. 291region = ' ' 292 293# Regions DGen is allowed to emulate when autodetection is enabled, 294# ordered by preference. 295str_region_order = JUEX 296 297# Run fullscreen? 298bool_fullscreen = no 299 300# Prevent screen tearing. 301bool_doublebuffer = yes 302 303# Additional thread to offload the displaying of frames in specific cases, 304# see dgenrc.5. 305bool_screen_thread = no 306 307# If you want to increase the size of the rendered screen, increase this value. 308# It currently must be a whole number. See scaling filters. 309int_scale = -1 310int_scale_x = -1 311int_scale_y = -1 312 313# Display the current number of frames per second. 314bool_fps = false 315 316# Display pressed buttons. Can be used to help configuring them. 317bool_buttons = false 318 319# Swap bytes in the video output. 320bool_swab = false 321 322# Scaler to use when display resolution is larger than original screen. 323# Choose between "stretch", "scale", "hqx", "hqx stretch", "scale2x", 324# "scale2x stretch" and "none". 325scaling_startup = stretch 326 327# Use a joystick? 328bool_joystick = yes 329 330# Number of milliseconds to wait after the last mouse motion event to release 331# buttons bound to such events. 332int_mouse_delay = 50 333 334# Use OpenGL mode? 335bool_opengl = yes 336 337# Let OpenGL stretch the screen. 338bool_opengl_stretch = yes 339 340# Retain original aspect ratio when resizing window. 341bool_aspect = true 342 343# Use GL_LINEAR for textures filtering instead of GL_NEAREST. 344bool_opengl_linear = true 345 346# Use 32 bit textures. They require more memory but are usually faster than 347# 16 bit textures. 348bool_opengl_32bit = true 349 350# Use a square OpenGL texture. Wastes memory. 351bool_opengl_square = false 352 353# Height of the text area at the bottom of the screen, in pixels. 354int_info_height = -1 355 356# Generate unfiltered screenshots. 357bool_raw_screenshots = false 358 359# The following variables aren't supported anymore. They have been replaced 360# with the joy_* bindings. They are still mentioned here to help convert 361# existing configuration files. 362# 363# Specifying joysticks identifiers, axes and buttons separately isn't required 364# anymore, because each joy_* binding provides all the necessary information 365# using the following format (see dgenrc.5): 366# 367# joy_padX_{control} = joystick{X}-button{Y} 368# joy_padX_{control} = joystick{X}-axis{Y}-(min|max) 369# joy_padX_{control} = joystick{X}-hat{Y}-{direction} 370# 371# This allows more than a single joystick/joypad to manage a game controller, 372# bind joystick/joypad axes to arbitrary actions, and a single joystick/joypad 373# event to several actions. 374# 375# Additionally, you can use the "calibrate" command to define controls easily. 376# 377# Joystick device selection. 378#int_joystick1_dev = 0 # not supported anymore 379#int_joystick2_dev = 1 # not supported anymore 380# 381# Joystick axes. 382#int_joystick1_axisX = 0 # not supported anymore 383#int_joystick1_axisY = 1 # not supported anymore 384#int_joystick2_axisX = 0 # not supported anymore 385#int_joystick2_axisY = 1 # not supported anymore 386# 387# Don't reverse axes by default 388#bool_joystick1_axisX = false # not supported anymore 389#bool_joystick1_axisY = false # not supported anymore 390#bool_joystick2_axisX = false # not supported anymore 391#bool_joystick2_axisY = false # not supported anymore 392# 393# Joypad 1 394#joypad1_b0 = A # not supported anymore 395#joypad1_b1 = C # not supported anymore 396#joypad1_b2 = A # not supported anymore 397#joypad1_b3 = B # not supported anymore 398#joypad1_b4 = Y # not supported anymore 399#joypad1_b5 = Z # not supported anymore 400#joypad1_b6 = X # not supported anymore 401#joypad1_b7 = X # not supported anymore 402#joypad1_b8 = START # not supported anymore 403#joypad1_b9 = MODE # not supported anymore 404#joypad1_b10 = # not supported anymore 405#joypad1_b11 = # not supported anymore 406#joypad1_b12 = # not supported anymore 407#joypad1_b13 = # not supported anymore 408#joypad1_b14 = # not supported anymore 409#joypad1_b15 = # not supported anymore 410# 411# Joypad 2 412#joypad2_b0 = A # not supported anymore 413#joypad2_b1 = C # not supported anymore 414#joypad2_b2 = A # not supported anymore 415#joypad2_b3 = B # not supported anymore 416#joypad2_b4 = Y # not supported anymore 417#joypad2_b5 = Z # not supported anymore 418#joypad2_b6 = X # not supported anymore 419#joypad2_b7 = X # not supported anymore 420#joypad2_b8 = START # not supported anymore 421#joypad2_b9 = MODE # not supported anymore 422#joypad2_b10 = # not supported anymore 423#joypad2_b11 = # not supported anymore 424#joypad2_b12 = # not supported anymore 425#joypad2_b13 = # not supported anymore 426#joypad2_b14 = # not supported anymore 427#joypad2_b15 = # not supported anymore 428