;==============================================================================
; Game controls
;==============================================================================

; invert the 'sprint' or run key (i.e. always sprinting, key to sneak)

invertspeed 0

;------------------------------------------------------------------------------
; Mouse controls
;------------------------------------------------------------------------------

; [use_mouse] (0/1) enable/disable mouse input
; BadMooD is intended to work with mouse/freelook, like modern FPS!

use_mouse 1

; [mouse_sensitivity] set mouse sentitivity level

mouse_sensitivity 1 

; [mouse_inverted] (0/1) inverts freelook up/down

mouse_inverted 0

; [freelook] (0/1) enable/disable 3D freelook/mouselook
; this enables modern FPS behaviour, player can look up/down and aim properly
; note: not classic Doom, being keys-only, no up/down but this is BadMooD!

freelook 1

; [mouseb_?] (0-1) mouse buttons

mouseb_fire 0		; shoot
mouseb_strafe 1		; hold to step sideways/strafe
;mouseb_forward 1	; =2 is unmapped, due to Atari mouse being 2 button

;------------------------------------------------------------------------------
; Keyboard controls (scancodes!)
;------------------------------------------------------------------------------

; non-ASCII keys:
;
; KEY_RIGHTARROW =	0xae
; KEY_LEFTARROW =	0xac
; KEY_UPARROW =		0xad
; KEY_DOWNARROW =	0xaf
; KEY_SHIFT =		0xb6
; KEY_CTRL =		0x9d
; KEY_ALT =		0xb8

key_up 0xad		; move forward
key_down 0xaf		; move backward
key_left 'a'		; turn left
key_right 's'		; turn right
key_strafeleft 0xac	; step left
key_straferight 0xae	; step right

key_strafe 0		; hold to step sideways/strafe
key_speed '#'		; hold to sprint
key_fire 0		; shoot
key_use ' '		; open doors etc.

;------------------------------------------------------------------------------
; Joystick/pad controls
;------------------------------------------------------------------------------

use_joystick 0		; use JagPad socket 'A'

joyb_speed 0		; button 'A'
joyb_fire 1		; button 'B'
joyb_strafe 2		; button 'C'
joyb_use 2		; button 'C'

;==============================================================================
; Rendering detail
;==============================================================================

; [screenblocks] (1-12) adjusts viewport window
; <=9 = reduced viewport, with status bar
;  10 = normal, with status bar
;  11 = fullscreen, no status bar
;  12 = trimmed fullscreen, reduced viewport, no status bar
; (performance hint: 12 or 8 are perhaps best for gameplay with xdetaillevel=1)

screenblocks 10

; x/y detail levels: render with chunky columns or chunky scanlines 
; disable:0 meaning no chunky (normal detail)
; note: VGA/RGB can each achieve one of these in HW, otherwise faked with SW
; (performance hint: x=1 & y=0 for VGA, x=0 & y=1 for RGB)

xdetaillevel 1
ydetaillevel 0

; [show_disk_icon] (0/1) show or hide the disk activity icon
; may be intrusive in low detail modes, so you can turn it off here

show_disk_icon 1

; show debug console output

enable_console 0

; [show_demoloop] (0/1) shows the old 2014 BadMooD credits demo loop & map
; IMPORTANT: the new title music is more expensive than the old version and
; the default channel count in the tile sequence is now 8 channels (was 6)
; so recommend reducing [aud_mix_channels] to 6 if you want this enabled...
; BROKEN - IGNORED, DISABLED AT SOURCE

show_demoloop 0

;==============================================================================
; Optional VGA tweaks (no effect on RGB monitors)
;==============================================================================

; [vga_highres_art] (0/1) enable 416x resolution title art instead of 320x
; notes: 
; - uses 32MHz video clock, yields 56Hz!
; - unlikely to work with >16MHz bus boosters! these change the 32MHz source
; - may not work with some VGA displays with narrow frequency compatibility
; - menus will be a bit less responsive
; - ignored on RGB displays
; (performance hint: 0)

vga_highres_art 0

; [vga_refresh_tweaks] (0/1) enable low-refresh video modes ingame
; notes:
; - slightly reduces VGA demand on system memory bus, slight performance gain
; - may not work on all monitors! can cause brief sync loss when changing screens
; - ignored on RGB displays
; (performance hint: 1)

vga_refresh_tweaks 1

;==============================================================================
; Sound configuration
;==============================================================================

; [aud_stereo] (0/1) enable stereo separation with positional SFX
; (performance hint: 0)

aud_stereo 1

; [aud_quality] (0-2) audio quality control
; notes:
; - 68030 @ 16MHz:	0
; - accelerated 68030:	0,1
; - 68040/60:		1,2
; - settings other than 0 will disable [aud_resamplecache]!
; (performance hint: 0)

aud_quality 1

; [aud_resamplecache] (0/1) enable resampling cache optimization
; notes:
; - this helps performance on base 16MHz system at the expense of extra RAM 
;   which is used to cache & accelerate pitch-resampled music notes & SFX
; - optimized for use with [aud_quality]=0 and is ignored when [aud_quality]>=1

aud_resamplecache 1

; [aud_invert_stereo] (0/1) swap L/R stereo channels
; notes:
; - requires [aud_stereo]=1

aud_invert_stereo 0

; [aud_mix_channels] (1-9) max number of audio channels mixed at any time
; notes:
; - effective polyphony, independent of channels actually used by a track
; - affects all non-ingame music e.g. titles, intermissions, level loader etc.
; - base system will struggle to mix 9 MIDI channels with [aud_quality]=2,
;   causing audio frame dropouts on the titlescreen! these are not tracker MODs!
; - current title track benefits from at least 6 channels, ideally 8+
; (performance hint: 6-8)

aud_mix_channels 9

; [aud_mix_channels_ingame] max number of audio channels mixed during gameplay 
; notes:
; - includes active SFX! so if set =6 and 2 SFX are busy, 4 remain for music
; - best balance is 6 for base system with music enabled or 3 if music is off
; - most of the tracks can sound ok with =4 or =5 but a few may sound sketchy
; (performance hint: 3-6)

aud_mix_channels_ingame 6

;==============================================================================
; SFX configuration
;==============================================================================

; [sfx_use_channels] (1-3) maximum number of mixed audio channels SFX can use
; notes: 
; - SFX channels are borrowed from [aud_mixchannels_ingame] but are only
;   active for as long as the SFX is playing, so this is merely a cap to
;   keep SFX under control & prevent ingame music being cancelled by action
; (performance hint: 1-3)

sfx_use_channels 3

; [sfx_volume] (0-15) relative SFX volume
; notes:
; - this is tied to the SFX volume slider in the game menus

sfx_volume 12

;------------------------------------------------------------------------------
; Music configuration
;------------------------------------------------------------------------------

; [music_replay_mode] (0-2) select overall music replay system
;  0 - off (music replay disabled)
;  1 - internal software music replay via Falcon030 Codec
;  2 - MIDI replay via external MIDI module (connected to Atari MIDI out)
; notes:
; - internal software mode uses a fixed, custom track set optimized for replay
; - MIDI replay mode converts & uses .MUS lumps from the available WADs
; (performance hint: 0,2)

music_replay_mode 1

; [music_randomize] (0/1) choose random track for each level, instead of table
; notes:
; - only affects native software replayer for now

music_randomize 0

; [music_ingame] (0/1) enable ingame music (SFX unaffected)
; notes:
; - while the music system is optimized to work well ingame for a base system,
;   a small fps performance gain will be seen when the ingame music is off
; (performance hint: 0)

music_ingame 1

; [music_volume/ingame] (0-15) relative music volumes
; notes:
; - [music_volume] affects titles, intermissions, loader etc.
; - [music_volume_ingame] adjusts background music volume during play
; - these are tied to the music volume sliders in the game menus

music_volume 12
music_volume_ingame 6

;------------------------------------------------------------------------------
; Hardware MIDI music configuration
;------------------------------------------------------------------------------
;
; note: MIDI options only valid for [music_replay_mode]=2 (external MIDI)
;
; [midi_device_type] select output device type
;  0,1 - MT32 compatible 
;    2 - standard GM/GS device 

midi_device_type 2

; [midi_channel] (1-16) channel number for external midi device

midi_channel 1
