+
    KiM  c                   s    ^ RI t ^ RIt^ RIHt ^ RIHtHtHtHt ^ RI	H
t
 ^ RIHt ^ RIHt ^ RIHt ^ RIHt ^ R	IHt R
RR.RRR.RRR.RR.RR.RR.RR.RR./tR R ltR R lt ! R R]4      tR# )i    N)gettext)AnyDictListOptional)settings)LutrisConfig)MissingExecutableError)Runner)system)split_argumentshq23edgeadvmamesaisupersai
supereagle	dotmatrixtv2xc                R    V ^8  d   QhR\         R\        R\        \         ,          /#    _option_keyconfigreturnstrr   r   format   ";/usr/lib/python3.14/site-packages/lutris/runners/scummvm.py__annotate__r!      s%     	 	S 	, 	8C= 	    c                 s    VP                   pR V9   dC   RV9   d<   VR,          pV'       d+   VR8w  d$   VR ,          pV'       d   VR8w  d   \        R4      # R# )scalerrenderersoftwarenormalz:<b>Warning</b> Scalers may not work with OpenGL rendering.N)runner_config_)r   r   r'   r$   r#      &&   r    _get_opengl_warningr*      sS    ((M= Z=%@ ,J."8,F&H,UVVr"   c                r   r   r   r   r   r    r!   r!   %   s&      3  RU r"   c                s    VP                   pRV9   dK   RV9   dD   VR,          pV\        9   d0   VR,          pV\        V,          9  d   \        R4      VV3,          # R# )zWGenerate a warning message for when the scaler and scale-factor can't be used together.r#   scale-factorzG<b>Warning</b> The '%s' scaler does not work with a scale factor of %s.N)r'   _supported_scale_factorsr(   )r   r   r'   r#   Zscale_factorr)   r    _get_scale_factor_warningr-   %   sk    ((M= ^}%Dx(--(8L#;F#CCbc g  
 r"   c                   s  a a ] tR t^5t o]! R4      t]! R4      t]! R4      .tRtRt	Rt
RRR	R
R]! R4      /RRR	RR]! R4      /RRR	R
R]! R4      R]! R4      /.t/ RRbRRbRRbRRbRRbRRbR R!bR"R#bR$R%bR&R'bR(R)bR*R+bR,R-bR.R/bR0R1bR2R3bR4R5bR6R7R8R9R:R;R<R=R>R?R@RARBRCRDRERFRGRHRIRJRKRLRMRNRORPRQRRRS/CtRRT/t. RRRU]! RV4      R]! RW4      R	RXRYR/NRRRU]! RV4      R]! RZ4      R	RXRYR[RR\/NRRRU]! RV4      R]! R]4      R	RXRYRR]! R^4      /NRRRU]! RV4      R]! R_4      R	R`RYRaRb. RORc]R]! Rd4      /NRRRU]! RV4      R]! Re4      R	R`RYRfRb. ROR]! Rg4      Rc]/NRRRU]! RV4      R]! Rh4      R	R`Rb]! Ri4      Rj3]! Rk4      Rl3]! Rm4      Rn3]! Ro4      Rp3.RYRjRqRR]! Rr4      /NRR RU]! RV4      R]! Rs4      R	R`Rb]! Ri4      Rj3]! Rt4      Ru3]! Rv4      Rw3]! Rx4      Ry3]! Rz4      R{3]! R|4      R}3]! R~4      R3]! R4      R3]! R4      R3]! R4      R3]! R4      R3]! R4      R3]! R4      R3.RYRjRqRR]! R4      /NRR"RU]! RV4      R]! R4      R	R`Rb]! Ri4      Rj3]! R4      R3]! R4      R3]! R4      R3]! R4      R3]! R4      R3]! R4      R3.RYRjRqRR]! R4      /NRR$RU]! RV4      R]! R4      R	RXR]! R4      RYR[RqR/NRRR]! R4      R	RR]! R4      RqR/NRR&R	R
R]! R4      R]! R4      RqR/NRRFR	R
R]! R4      R]! R4      RqR/NRRHR	R
R]! R4      R]! R4      RqR/NRR(R	R
R]! R4      R]! R4      RqR/NRR*R	R
R]! R4      R]! R4      RqR/NRR.R	R
RU]! R4      R]! R4      R]! R4      RqR/NRR,R	R
RU]! R4      R]! R4      R]! R4      RqR/NRR4RU]! R4      R]! R4      R	R`Rb. ROR]! R4      RqR/NRR2RU]! R4      R]! R4      R	R`Rb. ROR]! R4      RqR/NRR0RU]! R4      R]! R4      R	R`Rb. ROR]! R4      RqR/NRR<R	R
RU]! R4      R]! R4      R]! R4      RqR/NRR>R	R
RU]! R4      R]! R4      R]! R4      RqR/NRR@R	R
RU]! R4      R]! R4      R]! R4      RqR/NRR8R	R
RU]! R4      R]! R4      R]! R4      RqR/NRR:RU]! R4      R	R
R]! R4      R]! R4      RqR/NRR6RU]! R4      R]! R4      R	RXRYR[R]! R4      RqR/NRRBRU]! R4      R]! R4      R	RXRYR[R]! R4      RqR/NRRDRU]! R4      R]! R4      R	RXRYR[R]! R4      RqR/NRRJR	RXR]! R4      R]! R4      RqR/NRRLR	RXR]! R4      R]! R4      RqR/NRRNR	RXR]! R4      R]! R4      RqR/NRRPR	R
RU]! R4      R]! R4      R]! R4      RqR/NRRRR	R
RU]! R4      R]! R4      R]! R4      RqR/Nt]R 4       tV3R lR ltV3R lV 3R lltV3R lR ltV3R lR ltRR ltR tV3R lR ltRtVtV ;t# )scummvmz!Engine for point-and-click games.ZScummVMZLinuxTzscummvm/bin/scummvmzorg.scummvm.ScummVMoptiongame_idZtypeZstringZlabelzGame identifierpathZ	directoryzGame files locationargsZ	ArgumentsZhelpz3Command line arguments used when launching the gameZaspectz--aspect-ratioZ	subtitlesz--subtitlesZ
fullscreenz--fullscreenr#   z--scaler=%sr+   z--scale-factor=%sr$   z--renderer=%szrender-modez--render-mode=%szstretch-modez--stretch-mode=%sZ	filteringz--filteringZplatformz--platform=%szengine-speedz--engine-speed=%sz
talk-speedz--talkspeed=%szdimuse-tempoz--dimuse-tempo=%szmusic-tempoz
--tempo=%sz
opl-driverz--opl-driver=%szoutput-ratez--output-rate=%szmusic-driverz--music-driver=%sz
multi-midiz--multi-midiz	midi-gainz--midi-gain=%sZ	soundfontz--soundfont=%szmusic-volumez--music-volume=%sz
sfx-volumez--sfx-volume=%szspeech-volumez--speech-volume=%sznative-mt32z--native-mt32z	enable-gsz--enable-gsZjoystickz--joystick=%sZlanguagez--language=%sz	alt-introz--alt-introzcopy-protectionz--copy-protectionz	demo-modez--demo-modezdebug-levelz--debug-level=%szdebug-flagsz--debug-flags=%sz--no-fullscreenZsectionZGraphicsZ
FullscreenZboolZdefaultzEnable subtitlesFz%Enable subtitles for games with voicezAspect ratio correctionzMost games supported by ScummVM were made for VGA display modes using rectangular pixels. Activating this option for these games will preserve the 4:3 aspect ratio they were made for.zGraphic scalerZchoicer&   ZchoicesZwarningzaThe algorithm used to scale up the game's base resolution, resulting in different visual styles. zScale factorr   z|Changes the resolution of the game. For example, a 2x scale will take a 320x200 resolution game and scale it up to 640x400. ZRendererZAuto ZSoftwarer%   ZOpenGLZopenglzOpenGL (with shaders)Zopengl_shadersZadvancedz/Changes the rendering method used for 3D games.zRender modezHercules (Green)Z	hercGreenzHercules (Amber)Z	hercAmberZCGAZcgaZEGAZegaZVGAZvgaZAmigaZamigazFM TownsZfmtownszPC-9821Zpc9821zPC-9801Zpc9801z
Apple IIgsZ2gszAtari STZatariZ	MacintoshZ	macintoshzNChanges the graphics hardware the game will target, if the game supports this.zStretch modeZCenterZcenterzPixel Perfectzpixel-perfectzEven Pixelszeven-pixelsZStretchZstretchZFitZfitzFit (force aspect ratio)Zfit_force_aspectz:Changes how the game is placed when the window is resized.Z	FilteringztUses bilinear interpolation instead of nearest neighbor resampling for the aspect ratio correction and stretch mode.datadirzData directoryz)Defaults to share/scummvm if unspecified.ZPlatformzSpecifes platform of game. Allowed values: 2gs, 3do, acorn, amiga, atari, c64, fmtowns, nes, mac, pc pc98, pce, segacd, wii, windowsZJoystickz4Enables joystick input (default: 0 = first joystick)ZLanguagezISelects language (en, de, fr, it, pt, es, jp, zh, kr, se, gb, hb, ru, cz)zEngine speedzdSets frames per second limit (0 - 100) for Grim Fandango or Escape from Monkey Island (default: 60).z
Talk speedz'Sets talk speed for games (default: 60)ZAudiozMusic tempozDSets music tempo (in percent, 50-200) for SCUMM games (default: 100)zDigital iMuse tempozESets internal Digital iMuse tempo (10 - 100) per second (default: 10)zMusic driverz2Specifies the device ScummVM uses to output audio.zOutput ratez!Selects output sample rate in Hz.z
OPL driverzdChooses which emulator is used by ScummVM when the AdLib emulator is chosen as the Preferred device.zMusic volumez+Sets the music volume, 0-255 (default: 192)z
SFX volumez)Sets the sfx volume, 0-255 (default: 192)zSpeech volumez,Sets the speech volume, 0-255 (default: 192)z	MIDI gainz6Sets the gain for MIDI playback. 0-1000 (default: 100)Z	Soundfontz'Specifies the path to a soundfont file.zMixed AdLib/MIDI modez-Combines MIDI music with AdLib sound effects.zTrue Roland MT-32zrTells ScummVM that the MIDI device is an actual Roland MT-32, LAPC-I, CM-64, CM-32L, CM-500 or other MT-32 device.zEnable Roland GSzlTells ScummVM that the MIDI device is a GS device that has an MT-32 map, such as an SC-55, SC-88 or SC-8820.zUse alternate introz&Uses alternative intro for CD versionszCopy protectionzEnables copy protectionz	Demo modez3Starts demo mode of Maniac Mansion or The 7th GuestZ	DebuggingzDebug levelzSets debug verbosity levelzDebug flagsz#Enables engine specific debug flagsc                s8    V P                   P                  R 4      # )r1   )game_configget)selfs   &r    	game_pathZscummvm.game_path  s    ##F++r"   c                0   < V ^8  d   QhRS[ S[,          /# r   r   r   r   r   __classdict__   "r    r!   scummvm.__annotate__  s      S	 r"   c                sl    \         P                  P                  \        P                  R4      pV P                  4       P                  V4      '       dN   \         P                  P                  \        P                  R4      p\        P                  ! V4      '       d   V.# . #   \         d     . # i ; i)zSScummvm runner ships additional libraries, they may be removed in a future version.r.   zscummvm/lib)
osr1   joinr   Z
RUNNER_DIRget_executable
startswithr	   Zpath_existsr   )r7   Zbase_runner_pathr1      &  r    get_extra_libsZscummvm.get_extra_libs  s    	!ww||H,?,?K""$//0@AAww||H$7$7G%%d++ 6M 	 & 			s   AB$ A	B$ B$ $B32B3c                r9   r:   r;   r<   r>   r    r!   r?     s     
 
T#Y 
r"   c                s   < \         SV `  4       pV'       g   . # R V^ ,          9   d   V# V P                  4       pVRV,          RV,          .,           # )Zflatpakz--extrapath=%sz--themepath=%s)Zsuperget_commandget_scummvm_data_dir)r7   commanddata_dir	__class__s   &  r    rF   Zscummvm.get_command  sY    '%'I
"N,,.x'x'
 
 	
r"   c                s    < V ^8  d   QhRS[ /# r:   )r   r<   r>   r    r!   r?     s      c r"   c                s   V P                   P                  R 4      pVfk   \        P                  P	                  \        P                  P	                  V P                  4       4      4      p\        P                  P                  VR4      pV# )r4   zshare/scummvm)r'   r6   r@   r1   ZdirnamerB   rA   )r7   rI   Zroot_dirrD   r    rG   Zscummvm.get_scummvm_data_dir  s_    %%)))4wwrwwt7J7J7L'MNHww||Ho>Hr"   c                s6   < V ^8  d   QhRS[ S[S[3,          /# r:   )r   r   r   r<   r>   r    r!   r?     s     ; ;d38n ;r"   c                s    V P                  4       p\        R V P                  4       VP                  R4      .,           4      pV'       d#   \        P
                  P                  V4      VR&   RVRV P                  4       /# )NZLD_LIBRARY_PATHenvrH   )Zget_envZfilterrE   r6   r@   pathseprA   rF   )r7   rK   Z	lib_pathsrD   r    get_run_dataZscummvm.get_run_data  sg    lln4!4!4!6#''BS:T9U!UV	%'ZZ__Y%?C!"sIt'7'7'9::r"   c                s    V P                   P                  V4      pV'       d4   R V9   d   VP                  W5,          4       R# VP                  V4       R# V'       d   VP                  V4       R# R# )z%sN)r'   r6   append)r7   rH   ZkeycmdlineZcmdline_emptyZvalues   &&&&& r    inject_runner_optionZscummvm.inject_runner_option  sP    ""&&s+ww/w'NN=) r"   c           	     s   V P                  4       pV P                  P                  4        F0  w  r#V P                  WW0P                  P                  V4      4       K2  	  VP                  R V P                  ,          4       V P                  P                  R4      ;'       g    Rp\        V4       F  pVP                  V4       K  	  V P                  P                  R4      '       d+   VP                  V P                  P                  R4      4       RV/pV P                  4       pV'       d#   \        P                  P                  V4      VR&   V# )z	--path=%sr2   r3   r0   rH   Zld_library_path)rF   
option_mapZitemsrP   option_empty_mapr6   rN   r8   r5   r
   rE   r@   rL   rA   )r7   rH   r/   rO   r2   ZargZoutputZ
extra_libss   &       r    playZscummvm.play  s   ""$#446OF%%gw@U@U@Y@YZ`@ab  7{T^^34##F+11r"4(CNN3 )	**NN4++//	:;W%((*
(*


(CF$%r"   c                s@   < V ^8  d   QhRS[ S[ S[,          ,          /# r:   r;   r<   r>   r    r!   r?   +  s      tDI r"   c                sF   \         P                  ! V P                  4       R.,           \         P                  RRR7      ;_uu_ 4       pVP	                  4       ^ ,          p\
        P                  VR4      pRRR4       . pRpX F  pV'       db   \        V4      ^8  d   VP                  R4      pMRpVe:   V^ V pWg^,           \        V4       P                  4       p	VP                  W.4       VP                  R	4      '       g   K  RpK  	  V#   + '       g   i     L; i)
z5Return the entire list of games supported by ScummVM.z--list-gameszutf-8T)ZstdoutZencodingZuniversal_newlinesZ
NFZ z-----)
subprocessZPopenrF   ZPIPEZcommunicater   ZsplitZlenZindexZstriprN   rC   )
r7   Zscummvm_processZscumm_outputZ	game_listZ
game_arrayZgame_list_startZgameZ	dir_limitZgame_dirZ	game_names
   &         r    get_game_listZscummvm.get_game_list+  s    .!11*//T[pt
 
*668;L		,5I	

 
Dt9q= $

3I $I(#Ai0H $]SY ? E E GI%%x&;<w''"&  )
 
s   .DD 	 )
)r&   r&   )r   r   )r   r   )r   r   )r   r   )r   r   )r   r   )pmrW   )r   r   )r   r   ))1rX   )r   r   )r   r   )4rY   )5rZ   ))nullr[   autor]   )seqr^   )sndior_   alsara   )
fluidsynthrb   )mt32rc   )adlibrd   )pcspkre   )pcjrrf   )cmsrg   )timidityrh   ))11025ri   )22050rj   )44100rk   )r\   )mamerl   )dbrm   )nukedrn   r`   )op2lptro   )op3lptrp   )rwopl3rq   )N)Z__name__Z
__module__Z__qualname__Z__firstlineno__r(   ZdescriptionZ
human_nameZ	platformsZrunnable_aloneZrunner_executableZ
flatpak_idZgame_optionsrQ   rR   r*   r-   Zrunner_optionsZpropertyr8   rE   rF   rG   rM   rP   rS   rU   Z__static_attributes__Z__classdictcell__Z__classcell__)rJ   r=   s   @@r    r.   r.   5   sS    78K9J7IN-&J	9fh;L9MN	66;;P9QRfHQ{^AKL		
	L!"!]! 	n! 	-	!
 	+! 	O! 	)! 	+! 	]! 	O! 	+! 	&! 	+! 	|! 	'!  	)!!" 	+#!$ 	n%%+'-]OO].]))A!JF %&78qlq}Q|_Ft	
q kq}Q)*Fu<	
q" hq}Q01FtA3	
!q< hq}Q'(Hx  *As'	
;qj nq}Q~&Hs  A?
 0%	
iqR jq}Qz]H6B:
+8h'*+-=>	 rAGH	
Qqp mq}Q}%H6B%&4%&455!55!55!7W%:	*9x(9x(<%(:(;- rAfg-	
oq` nq}Q~&H6B8h'?#_5=!=19y)55!-.0BC rARS!	
_qD kq}Q{^FAO u	
Cq\ iQ'(KAAB	
[qj jHQz]AH 		
iq~ jHQz]ALM	
}qL jHQz]Aab	
KqZ nHQ~&Av 	
Yql lHQ|_A?@	
kqz mHqzQ}%A\]	
yqJ nHqzQ,-A]^	
IqZ nqzQ~&H  AJK)	
YqF mqzQ}%H 
 A9:	
Eq` lqzQ|_H 	 Av %	
_qH nHqzQ~&ACD	
GqX lHqzQ|_AAB	
Wqh oHqzQ'ADE	
gqx kHqzQ{^ANO	
wqH	 kqzHQ{^A?@	
G	qX	 lqzQ./FuAEF	
W	qj	 mqzQ*+FuAG 	
i	qB
 kqzQ)*FuAD 	
A
qZ
 kFQ,-A>?	
Y
qh
 'FQ()A/0	
g
qv
 kFQ{^AKL	
u
qD mHq~Q}%A23	
CqT mHq~Q}%A;<	
SqNf , , 
 
 ; ;*$  r"   r.   )r@   rT   r    r(   Ztypingr   r   r   r   Zlutrisr   Zlutris.configr   Zlutris.exceptionsr   Zlutris.runners.runnerr   Zlutris.utilr	   Zlutris.util.stringsr
   r,   r*   r-   r.   rV   r"   r    <module>rr      s    	    , ,  & 4 (  / 	3*
S#JSz	C53%#
SE	 	 Lf Lr"   