v0.99pre8 - Gamelist generation crashes when control type is keyboard
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Wah!Cade |
Fix Committed
|
Undecided
|
Unassigned |
Bug Description
Game list generation crashes in both windows and linux when control type is 'keyboard' for ~0.137 mame builds. Tested with 0.137u4 in windows and 0.137u3 in mythbuntu 9.10.
Traceback (most recent call last):
File "/usr/local/
self.
File "/usr/local/
self.
File "/usr/local/
self.
File "/usr/local/
gd = mi.next()
File "/usr/local/
d['
KeyError: 'keyboard'
This can be fixed by forcing keyboard as a string into d['controller_
with
if ctrl.attrib['type'] == 'keyboard':
else:
*** fix tested in linux
Related branches
- Andy Balcombe: Pending requested
-
Diff: 31617 lines (+16742/-4763) (has conflicts)121 files modified.bzrignore (+0/-40)
VERSION (+1/-1)
bdist_debian.py (+4/-1)
build_deb_package (+7/-2)
bzr_update (+64/-0)
config.dist/ini/mame.ini (+10/-0)
config.dist/layouts/artwork_1024x576/layout.lay (+551/-0)
config.dist/layouts/retro_black_1024x576/layout.lay (+551/-0)
config.dist/wahcade.ini (+14/-1)
constants.py (+11/-7)
doc/SAIRUK (+5/-0)
filters.py (+145/-92)
glade/layout_editor.glade (+12/-10)
glade/wahcade_setup.glade (+2/-2)
glade/wahcade_setup.glade.h (+1/-1)
glade/wahcade_setup.glade~ (+6670/-0)
gst_media.py (+109/-6)
install (+2/-2)
joystick.py (+162/-14)
layout_editor.py (+7/-2)
layout_props.py (+3/-3)
make_gettext (+14/-10)
make_tarball (+18/-3)
mamewah_ini.py (+2/-2)
pixmaps/svg/wahcade-launch.svg (+709/-0)
plugins/launcher_desktop.py (+79/-0)
plugins/launcher_lnk.py (+72/-0)
plugins/launcher_url.py (+71/-0)
po/de.po (+473/-442)
po/en_GB.po (+546/-526)
po/es.po (+469/-445)
po/fr.po (+430/-398)
po/it.po (+424/-395)
po/messages.pot (+375/-376)
po/sv.po (+455/-423)
scrolled_list.py (+16/-8)
templates/advmame.ini (+1/-1)
templates/atari800-atari-5200.ini (+62/-0)
templates/atari800-sdl.ini (+60/-0)
templates/dgen-genesis.ini (+60/-0)
templates/dgen.ini (+0/-60)
templates/dolphin-wii.ini (+62/-0)
templates/dosbox.ini (+1/-1)
templates/fceu.ini (+1/-1)
templates/gen-gs.ini (+0/-62)
templates/gens-genesis.ini (+62/-0)
templates/gens.ini (+0/-61)
templates/gngeo-snk-neo-geo.ini (+63/-0)
templates/hatari-atarist.ini (+62/-0)
templates/hugo-nec-pce-turbo_grafx_16.ini (+61/-0)
templates/hugo.ini (+0/-61)
templates/jzintv-mattel-intellivision.ini (+63/-0)
templates/mednafen-atari-lynx.ini (+62/-0)
templates/mednafen-bandai-wonderswan.ini (+62/-0)
templates/mednafen-lynx.ini (+0/-62)
templates/mednafen-nec-hudson-pc-engine-cd.ini (+62/-0)
templates/mednafen-nec-pc-fx.ini (+62/-0)
templates/mednafen-nec-pce-tg16.ini (+61/-0)
templates/mednafen-nec-supergrafx.ini (+63/-0)
templates/mednafen-nintendo-gameboy-advance.ini (+63/-0)
templates/mednafen-nintendo-gameboy-color.ini (+63/-0)
templates/mednafen-nintendo-gameboy.ini (+63/-0)
templates/mednafen-nintendo-virtualboy.ini (+61/-0)
templates/mednafen-pce-tg16.ini (+0/-61)
templates/mednafen-sega-game-gear.ini (+62/-0)
templates/mednafen-sega-master-system.ini (+63/-0)
templates/mednafen-snk-neogeo-pocket.ini (+62/-0)
templates/mess-atari-5200.ini (+61/-0)
templates/mess-atari-7800.ini (+62/-0)
templates/mess-atari-jaguar.ini (+62/-0)
templates/mess-atari800.ini (+0/-61)
templates/mess-colecovision.ini (+29/-31)
templates/mess-gamegear.ini (+0/-60)
templates/mess-gbclassic.ini (+0/-62)
templates/mess-gbcolor.ini (+0/-62)
templates/mess-general.ini (+60/-0)
templates/mess-genesis.ini (+0/-62)
templates/mess-mastersystem.ini (+0/-60)
templates/mess-mattel-intellivision.ini (+61/-0)
templates/mess-nes.ini (+0/-60)
templates/mess-nintendo-gameboy-color.ini (+62/-0)
templates/mess-nintendo-gb-classic.ini (+62/-0)
templates/mess-nintendo-nes.ini (+60/-0)
templates/mess-sega-game-gear.ini (+60/-0)
templates/mess-sega-genesis.ini (+62/-0)
templates/mess-sega-master-system.ini (+60/-0)
templates/mess-vectrex.ini (+63/-0)
templates/mupen64plus.ini (+1/-1)
templates/neoraine-snk-neo-geo-cd.ini (+63/-0)
templates/nestopia.ini (+1/-1)
templates/pcsx.ini (+0/-62)
templates/pcsxr-sony-playstation.ini (+63/-0)
templates/raine-raine.ini (+63/-0)
templates/raine-snk-neogeo-cd.ini (+62/-0)
templates/sdlmame.ini (+1/-1)
templates/sinclair_zx_spectrum-fbzz-speccy.ini (+62/-0)
templates/snes9x.ini (+1/-1)
templates/supermodel-sega-model-3.ini (+63/-0)
templates/vba-gameboy-advance.ini (+62/-0)
templates/vbadv.ini (+0/-62)
templates/vectrex.ini (+0/-63)
templates/vice-commodore-c16.ini (+63/-0)
templates/vice-commodore-c64.ini (+62/-0)
templates/vice.ini (+0/-62)
templates/virtual-jaguar.ini (+61/-0)
templates/wine.ini (+1/-1)
templates/xmame-sdl.ini (+62/-0)
templates/xmame-xgl.ini (+62/-0)
templates/xmame.ini (+1/-1)
templates/zsnes.ini (+1/-1)
wahcade_files (+46/-17)
wc_common.py (+230/-27)
wc_setup.py (+41/-35)
win_cpviewer.py (+11/-9)
win_filter.py (+15/-13)
win_history.py (+8/-6)
win_list.py (+11/-1)
win_main.py (+955/-331)
win_message.py (+4/-4)
win_options.py (+19/-12)
win_scrsaver.py (+32/-12)
description: | updated |
Changed in wahcade: | |
status: | New → Fix Committed |
With additional time to look at this issue, the last mentioned 'fix' was a workaround. The required fix is to add 'keyboard': u'Keyboard', into the controllers array starting at line 74, ie
this,
_controllers = { way': u'Double 2-Way Joysticks', 2way': u'Double Vertical 2-Way Joysticks', way': u'Double 4-Way Joysticks', way': u'Double 8-Way Joysticks',
'joy2way': u'2-Way Joystick',
'vjoy2way': u'Vertical 2-Way Joystick',
'joy4way': u'4-Way Joystick',
'joy8way': u'8-Way Joystick',
'stick': u'Analogue Joystick (or ~270\xb0 Wheel)',
'doublejoy2
'vdoublejoy
'doublejoy4
'doublejoy8
'lightgun': u'Light-Gun',
'paddle': u'Paddle (or ~270\xb0 Wheel)',
'dial': u'Spinner (or 360\xb0 Wheel)',
'trackball': u'Trackball',
'pedal': u'Pedal',
'': u'None'}
becomes,
_controllers = { way': u'Double 2-Way Joysticks', 2way': u'Double Vertical 2-Way Joysticks', way': u'Double 4-Way Joysticks', way': u'Double 8-Way Joysticks',
'joy2way': u'2-Way Joystick',
'vjoy2way': u'Vertical 2-Way Joystick',
'joy4way': u'4-Way Joystick',
'joy8way': u'8-Way Joystick',
'stick': u'Analogue Joystick (or ~270\xb0 Wheel)',
'doublejoy2
'vdoublejoy
'doublejoy4
'doublejoy8
'lightgun': u'Light-Gun',
'paddle': u'Paddle (or ~270\xb0 Wheel)',
'dial': u'Spinner (or 360\xb0 Wheel)',
'trackball': u'Trackball',
'pedal': u'Pedal',
'keyboard': u'Keyboard',
'': u'None'}
The gamelist will build completely using listxml as list_generation _method on mame137 and above builds